- Parameters
-
msurface | input multi surface |
tol | tolerance, semantic driven by tolerance_type |
tolerance_type | see LW_LINEARIZE_TOLERANCE_TYPE |
flags | see flags in lwarc_linearize |
- Returns
- a newly allocated LWMPOLY
Definition at line 738 of file lwstroke.c.
749 LWDEBUG(2,
"lwmsurface_linearize called.");
753 for (i = 0; i < msurface->
ngeoms; i++)
755 tmp = msurface->
geoms[i];
764 for (j = 0; j < poly->
nrings; j++)
POINTARRAY * ptarray_clone_deep(const POINTARRAY *ptarray)
Deep clone a pointarray (also clones serialized pointlist)
void * lwalloc(size_t size)
LWCOLLECTION * lwcollection_construct(uint8_t type, int32_t srid, GBOX *bbox, uint32_t ngeoms, LWGEOM **geoms)
LWPOLY * lwpoly_construct(int32_t srid, GBOX *bbox, uint32_t nrings, POINTARRAY **points)
#define LWDEBUG(level, msg)
static LWPOLY * lwcurvepoly_linearize(const LWCURVEPOLY *curvepoly, double tol, LW_LINEARIZE_TOLERANCE_TYPE tolerance_type, int flags)
References CURVEPOLYTYPE, LWMSURFACE::geoms, lwalloc(), lwcollection_construct(), lwcurvepoly_linearize(), LWDEBUG, lwpoly_construct(), MULTIPOLYGONTYPE, LWMSURFACE::ngeoms, LWPOLY::nrings, POLYGONTYPE, ptarray_clone_deep(), LWPOLY::rings, LWMSURFACE::srid, LWGEOM::type, and ovdump::type.
Referenced by lwcurve_linearize().