384{
385 uint32_t i;
386 char *ptr=output;
387
388 ptr += sprintf(ptr, "<%sPolygon", prefix);
389 if ( srs ) ptr += sprintf(ptr, " srsName=\"%s\"", srs);
391 {
392 ptr += sprintf(ptr, "/>");
393 return (ptr-output);
394 }
395 ptr += sprintf(ptr, ">");
396 ptr += sprintf(ptr, "<%souterBoundaryIs><%sLinearRing><%scoordinates>",
397 prefix, prefix, prefix);
399 ptr += sprintf(ptr, "</%scoordinates></%sLinearRing></%souterBoundaryIs>", prefix, prefix, prefix);
400 for (i=1; i<poly->
nrings; i++)
401 {
402 ptr += sprintf(ptr, "<%sinnerBoundaryIs><%sLinearRing><%scoordinates>", prefix, prefix, prefix);
404 ptr += sprintf(ptr, "</%scoordinates></%sLinearRing></%sinnerBoundaryIs>", prefix, prefix, prefix);
405 }
406 ptr += sprintf(ptr, "</%sPolygon>", prefix);
407
408 return (ptr-output);
409}
int lwpoly_is_empty(const LWPOLY *poly)
static size_t pointArray_toGML2(POINTARRAY *pa, char *buf, int precision)