1681 ptr += sprintf(ptr,
"<%sMultiGeometry", prefix);
1682 if (srs) ptr += sprintf(ptr,
" srsName=\"%s\"", srs);
1683 if (
id) ptr += sprintf(ptr,
" %sid=\"%s\"", prefix,
id);
1687 ptr += sprintf(ptr,
"/>");
1688 return (ptr-output);
1690 ptr += sprintf(ptr,
">");
1692 for (i=0; i<col->
ngeoms; i++)
1694 subgeom = col->
geoms[i];
1695 ptr += sprintf(ptr,
"<%sgeometryMember>", prefix);
1716 lwerror(
"asgml3_collection_buf: unknown geometry type");
1718 ptr += sprintf(ptr,
"</%sgeometryMember>", prefix);
1722 ptr += sprintf(ptr,
"</%sMultiGeometry>", prefix);
1724 return (ptr-output);
#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_multi_buf(const LWCOLLECTION *col, const char *srs, char *output, int precision, int opts, const char *prefix, const char *id)
static size_t asgml3_collection_buf(const LWCOLLECTION *col, const char *srs, char *output, int precision, int opts, const char *prefix, const char *id)
static size_t asgml3_line_buf(const LWLINE *line, const char *srs, char *output, int precision, int opts, const char *prefix, const char *id)
static size_t asgml3_point_buf(const LWPOINT *point, const char *srs, char *output, int precision, int opts, const char *prefix, const char *id)
static size_t asgml3_poly_buf(const LWPOLY *poly, const char *srs, char *output, int precision, int opts, int is_patch, const char *prefix, const char *id)