PostGIS  3.3.9dev-r@@SVN_REVISION@@

◆ GEOSnoop()

Datum GEOSnoop ( PG_FUNCTION_ARGS  )

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

2877 {
2878  GSERIALIZED *geom;
2879  GEOSGeometry *geosgeom;
2880  GSERIALIZED *lwgeom_result;
2881 
2882  initGEOS(lwpgnotice, lwgeom_geos_error);
2883 
2884  geom = PG_GETARG_GSERIALIZED_P(0);
2885  geosgeom = POSTGIS2GEOS(geom);
2886  if ( ! geosgeom ) PG_RETURN_NULL();
2887 
2888  lwgeom_result = GEOS2POSTGIS(geosgeom, gserialized_has_z(geom));
2889  GEOSGeom_destroy(geosgeom);
2890 
2891  PG_FREE_IF_COPY(geom, 0);
2892 
2893  PG_RETURN_POINTER(lwgeom_result);
2894 }
int gserialized_has_z(const GSERIALIZED *g)
Check if a GSERIALIZED has a Z ordinate.
Definition: gserialized.c:174
void lwgeom_geos_error(const char *fmt,...)
GSERIALIZED * GEOS2POSTGIS(GEOSGeom geom, char want3d)
GEOSGeometry * POSTGIS2GEOS(const GSERIALIZED *pglwgeom)

References GEOS2POSTGIS(), gserialized_has_z(), lwgeom_geos_error(), and POSTGIS2GEOS().

Here is the call graph for this function: