54 for (uint32_t i = 0; i < compound->ngeoms; i++)
56 uint32_t i_end = i == 0 ? compound->ngeoms - 1 : i - 1;
57 const LWLINE *geom_start = (
LWLINE *)(compound->geoms[i]);
58 const LWLINE *geom_end = (
LWLINE *)(compound->geoms[i_end]);
LWGEOM * lwcompound_as_lwgeom(const LWCOMPOUND *obj)
int lwgeom_has_z(const LWGEOM *geom)
Return LW_TRUE if geometry has Z ordinates.
#define LW_TRUE
Return types for functions with status returns.
int p3d_same(const POINT3D *p1, const POINT3D *p2)
int p2d_same(const POINT2D *p1, const POINT2D *p2)
static const POINT2D * getPoint2d_cp(const POINTARRAY *pa, uint32_t n)
Returns a POINT2D pointer into the POINTARRAY serialized_ptlist, suitable for reading from.
static const POINT3D * getPoint3d_cp(const POINTARRAY *pa, uint32_t n)
Returns a POINT3D pointer into the POINTARRAY serialized_ptlist, suitable for reading from.
static int lwgeom_is_empty(const LWGEOM *geom)
Return true or false depending on whether a geometry is an "empty" geometry (no vertices members)