1636 size_t prefixlen = strlen(prefix);
1639 size =
sizeof(
"<MultiGeometry></MultiGeometry>") + prefixlen*2;
1641 if (srs) size += strlen(srs) +
sizeof(
" srsName=..");
1642 if (
id) size += strlen(
id) + strlen(prefix) +
sizeof(
" id=..");
1644 for (i=0; i<col->
ngeoms; i++)
1646 subgeom = col->
geoms[i];
1647 size += (
sizeof(
"<geometryMember>/") + prefixlen ) * 2;
1665 lwerror(
"asgml3_collection_size: unknown geometry type");
#define POINTTYPE
LWTYPE numbers, used internally by PostGIS.
int lwgeom_is_collection(const LWGEOM *lwgeom)
Determine whether a LWGEOM can contain sub-geometries or not.
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
static size_t asgml3_poly_size(const LWPOLY *poly, const char *srs, int precision, int opts, const char *prefix, const char *id)
static size_t asgml3_point_size(const LWPOINT *point, const char *srs, int precision, int opts, const char *prefix, const char *id)
static size_t asgml3_line_size(const LWLINE *line, const char *srs, int precision, int opts, const char *prefix, const char *id)
static size_t asgml3_multi_size(const LWCOLLECTION *col, const char *srs, int precision, int opts, const char *prefix, const char *id)