/*
* $Log$
+* Revision 1.22 2004/07/01 17:02:26 strk
+* Updated to support latest GEOS API.
+*
* Revision 1.21 2004/06/16 19:59:36 strk
* Changed GEOS_VERSION to POSTGIS_GEOS_VERSION to avoid future clashes
*
cl->setAt(c, 4);
g = geomFactory->createLinearRing(cl);
+#if POSTGIS_GEOS_VERSION == 100
delete cl;
+#endif
if (g==NULL) return NULL;
g->setSRID(SRID);
return g;
subGeos->push_back(geoms[t]);
}
g = geomFactory->buildGeometry(subGeos);
+#if POSTGIS_GEOS_VERSION == 100
delete subGeos;
+#endif
if (g==NULL)
return NULL;
g->setSRID(SRID);
}
}
Geometry *g = geomFactory->createLineString(coords);
+#if POSTGIS_GEOS_VERSION == 100
delete coords;
+#endif
if (g==NULL) return NULL;
g->setSRID(SRID);
return g;
subPolys->push_back(PostGIS2GEOS_polygon(polygons[t], SRID,is3d ));
}
g = geomFactory->createMultiPolygon(subPolys);
-#if POSTGIS_GEOS_VERSION > 100
- for (t=0; t<(int)subPolys->size(); t++)
- delete (*subPolys)[t];
-#endif
+#if POSTGIS_GEOS_VERSION == 100
delete subPolys;
+#endif
if (g== NULL)
return NULL;
subLines->push_back(PostGIS2GEOS_linestring(lines[t],
SRID,is3d ));
}
- // geometries pointed to by subLines will be owned
- // by returned MultiLineString object
g = geomFactory->createMultiLineString(subLines);
-#if POSTGIS_GEOS_VERSION > 100
- for (t=0; t<(int)subLines->size(); t++) delete (*subLines)[t];
-#endif
+#if POSTGIS_GEOS_VERSION == 100
delete subLines;
+#endif
if (g==NULL) return NULL;
g->setSRID(SRID);
return g;
subPoints->push_back(PostGIS2GEOS_point(points[t], SRID,is3d ));
}
g = geomFactory->createMultiPoint(subPoints);
-#if POSTGIS_GEOS_VERSION > 100
- for (t=0; t<(int)subPoints->size(); t++)
- delete (*subPoints)[t];
-#endif
+#if POSTGIS_GEOS_VERSION == 100
delete subPoints;
+#endif
if (g==NULL)
return NULL;
g->setSRID(SRID);
}
}
outerRing = (LinearRing*) geomFactory->createLinearRing(cl);
+#if POSTGIS_GEOS_VERSION == 100
delete cl;
+#endif
if (outerRing == NULL)
return NULL;
outerRing->setSRID(SRID);
}
}
innerRing = (LinearRing *) geomFactory->createLinearRing(cl);
+#if POSTGIS_GEOS_VERSION == 100
delete cl;
+#endif
if (innerRing == NULL)
{
delete outerRing;