PostGIS 3.0.6dev-r@@SVN_REVISION@@
Loading...
Searching...
No Matches

◆ GEOS2POSTGIS()

GSERIALIZED * GEOS2POSTGIS ( GEOSGeom  geom,
char  want3d 
)

Definition at line 2660 of file postgis/lwgeom_geos.c.

2661{
2662 LWGEOM *lwgeom;
2663 GSERIALIZED *result;
2664
2665 lwgeom = GEOS2LWGEOM(geom, want3d);
2666 if ( ! lwgeom )
2667 {
2668 lwpgerror("%s: GEOS2LWGEOM returned NULL", __func__);
2669 return NULL;
2670 }
2671
2672 POSTGIS_DEBUGF(4, "%s: GEOS2LWGEOM returned a %s", __func__, lwgeom_summary(lwgeom, 0));
2673
2674 if (lwgeom_needs_bbox(lwgeom)) lwgeom_add_bbox(lwgeom);
2675
2676 result = geometry_serialize(lwgeom);
2677 lwgeom_free(lwgeom);
2678
2679 return result;
2680}
LWGEOM * GEOS2LWGEOM(const GEOSGeometry *geom, uint8_t want3d)
void lwgeom_free(LWGEOM *geom)
Definition lwgeom.c:1138
char * lwgeom_summary(const LWGEOM *lwgeom, int offset)
int lwgeom_needs_bbox(const LWGEOM *geom)
Check whether or not a lwgeom is big enough to warrant a bounding box.
Definition lwgeom.c:1191
void lwgeom_add_bbox(LWGEOM *lwgeom)
Compute a bbox if not already computed.
Definition lwgeom.c:677
GSERIALIZED * geometry_serialize(LWGEOM *lwgeom)

References geometry_serialize(), GEOS2LWGEOM(), lwgeom_add_bbox(), lwgeom_free(), lwgeom_needs_bbox(), and lwgeom_summary().

Referenced by boundary(), buffer(), clusterintersecting_garray(), GEOSnoop(), pgis_geometry_union_finalfn(), pgis_union_geometry_array(), polygonize_garray(), ST_MinimumClearanceLine(), ST_OrientedEnvelope(), and topologypreservesimplify().

Here is the call graph for this function:
Here is the caller graph for this function: