PostGIS  3.4.0dev-r@@SVN_REVISION@@

◆ LWGEOM_to_BOX3D()

Datum LWGEOM_to_BOX3D ( PG_FUNCTION_ARGS  )

Definition at line 398 of file lwgeom_box3d.c.

399 {
400  GSERIALIZED *geom = PG_GETARG_GSERIALIZED_P(0);
401  LWGEOM *lwgeom = lwgeom_from_gserialized(geom);
402  GBOX gbox;
403  BOX3D *result;
404  int rv = lwgeom_calculate_gbox(lwgeom, &gbox);
405 
406  if (rv == LW_FAILURE)
407  PG_RETURN_NULL();
408 
409  result = box3d_from_gbox(&gbox);
410  result->srid = lwgeom->srid;
411 
412  lwgeom_free(lwgeom);
413  PG_RETURN_POINTER(result);
414 }
char result[OUT_DOUBLE_BUFFER_SIZE]
Definition: cu_print.c:262
BOX3D * box3d_from_gbox(const GBOX *gbox)
Definition: gbox.c:53
LWGEOM * lwgeom_from_gserialized(const GSERIALIZED *g)
Allocate a new LWGEOM from a GSERIALIZED.
Definition: gserialized.c:239
#define LW_FAILURE
Definition: liblwgeom.h:96
void lwgeom_free(LWGEOM *geom)
Definition: lwgeom.c:1155
int lwgeom_calculate_gbox(const LWGEOM *lwgeom, GBOX *gbox)
Calculate bounding box of a geometry, automatically taking into account whether it is cartesian or ge...
Definition: lwgeom.c:755
int32_t srid
Definition: liblwgeom.h:460

References box3d_from_gbox(), LW_FAILURE, lwgeom_calculate_gbox(), lwgeom_free(), lwgeom_from_gserialized(), result, and LWGEOM::srid.

Referenced by gserialized_contained_3d(), gserialized_contains_3d(), gserialized_overlaps_3d(), gserialized_same_3d(), gserialized_spgist_compress_3d(), gserialized_spgist_inner_consistent_3d(), and gserialized_spgist_leaf_consistent_3d().

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