179 for (i=0; i<ngeoms; i++)
183 if ( hasz && hasm )
break;
191 for ( i=0; i < ngeoms; i++ )
int lwpointiterator_next(LWPOINTITERATOR *s, POINT4D *p)
Attempts to assign the next point in the iterator to p, and advances the iterator to the next point...
POINTARRAY * ptarray_construct_empty(char hasz, char hasm, uint32_t maxpoints)
Create a new POINTARRAY with no points.
void ptarray_free(POINTARRAY *pa)
LWLINE * lwline_construct_empty(int srid, char hasz, char hasm)
LWPOINTITERATOR * lwpointiterator_create(const LWGEOM *g)
Create a new LWPOINTITERATOR over supplied LWGEOM*.
void lwpointiterator_destroy(LWPOINTITERATOR *s)
Free all memory associated with the iterator.
const char * lwtype_name(uint8_t type)
Return the type name string associated with a type number (e.g.
int ptarray_append_point(POINTARRAY *pa, const POINT4D *pt, int allow_duplicates)
Append a point to the end of an existing POINTARRAY If allow_duplicate is LW_FALSE, then a duplicate point will not be added.
#define LW_TRUE
Return types for functions with status returns.
int ptarray_append_ptarray(POINTARRAY *pa1, POINTARRAY *pa2, double gap_tolerance)
Append a POINTARRAY, pa2 to the end of an existing POINTARRAY, pa1.
int lwpoint_getPoint4d_p(const LWPOINT *point, POINT4D *out)
#define FLAGS_GET_Z(flags)
Macros for manipulating the 'flags' byte.
#define POINTTYPE
LWTYPE numbers, used internally by PostGIS.
#define FLAGS_GET_M(flags)
int lwgeom_is_empty(const LWGEOM *geom)
Return true or false depending on whether a geometry is an "empty" geometry (no vertices members) ...
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
LWLINE * lwline_construct(int srid, GBOX *bbox, POINTARRAY *points)