- Parameters
-
mcurve | input compound curve |
tol | tolerance, semantic driven by tolerance_type |
tolerance_type | see LW_LINEARIZE_TOLERANCE_TYPE |
flags | see flags in lwarc_linearize |
- Returns
- a newly allocated LWMLINE
Definition at line 599 of file lwstroke.c.
References CIRCSTRINGTYPE, COMPOUNDTYPE, LWMCURVE::flags, FLAGS_NDIMS, LWMCURVE::geoms, LINETYPE, lwalloc(), lwcircstring_linearize(), lwcollection_construct(), lwcompound_linearize(), LWDEBUGF, lwerror(), lwline_construct(), MULTILINETYPE, LWMCURVE::ngeoms, ptarray_clone_deep(), LWMCURVE::srid, ovdump::type, and LWGEOM::type.
Referenced by lwcurve_linearize().
611 for (i = 0; i < mcurve->
ngeoms; i++)
628 lwerror(
"Unsupported geometry found in MultiCurve.");
LWCOLLECTION * lwcollection_construct(uint8_t type, int srid, GBOX *bbox, uint32_t ngeoms, LWGEOM **geoms)
static LWLINE * lwcompound_linearize(const LWCOMPOUND *icompound, double tol, LW_LINEARIZE_TOLERANCE_TYPE tolerance_type, int flags)
LWLINE * lwline_construct(int srid, GBOX *bbox, POINTARRAY *points)
POINTARRAY * ptarray_clone_deep(const POINTARRAY *ptarray)
Deep clone a pointarray (also clones serialized pointlist)
static LWLINE * lwcircstring_linearize(const LWCIRCSTRING *icurve, double tol, LW_LINEARIZE_TOLERANCE_TYPE tolerance_type, int flags)
void * lwalloc(size_t size)
#define LWDEBUGF(level, msg,...)
#define FLAGS_NDIMS(flags)
void lwerror(const char *fmt,...)
Write a notice out to the error handler.