PostGIS  3.0.6dev-r@@SVN_REVISION@@

◆ issimple()

Datum issimple ( PG_FUNCTION_ARGS  )

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

2601 {
2602  GSERIALIZED *geom;
2603  LWGEOM *lwgeom_in;
2604  int result;
2605 
2606  POSTGIS_DEBUG(2, "issimple called");
2607 
2608  geom = PG_GETARG_GSERIALIZED_P(0);
2609 
2610  if ( gserialized_is_empty(geom) )
2611  PG_RETURN_BOOL(true);
2612 
2613  lwgeom_in = lwgeom_from_gserialized(geom);
2614  result = lwgeom_is_simple(lwgeom_in);
2615  lwgeom_free(lwgeom_in) ;
2616  PG_FREE_IF_COPY(geom, 0);
2617 
2618  if (result == -1) {
2619  PG_RETURN_NULL(); /*never get here */
2620  }
2621 
2622  PG_RETURN_BOOL(result);
2623 }
LWGEOM * lwgeom_from_gserialized(const GSERIALIZED *g)
Allocate a new LWGEOM from a GSERIALIZED.
Definition: gserialized.c:239
int gserialized_is_empty(const GSERIALIZED *g)
Check if a GSERIALIZED is empty without deserializing first.
Definition: gserialized.c:152
void lwgeom_free(LWGEOM *geom)
Definition: lwgeom.c:1138
int lwgeom_is_simple(const LWGEOM *lwgeom)

References gserialized_is_empty(), lwgeom_free(), lwgeom_from_gserialized(), and lwgeom_is_simple().

Here is the call graph for this function: