Compute max size required for X3D version of this inspected geometry.
Will recurse when needed. Don't call this with single-geoms inspected.
Definition at line 394 of file lwout_x3d.c.
References asx3d3_line_size(), asx3d3_point_size(), asx3d3_poly_size(), LWCOLLECTION::geoms, LINETYPE, LWCOLLECTION::ngeoms, POINTTYPE, POLYGONTYPE, LWGEOM::type, and X3D_USE_GEOCOORDS.
Referenced by asx3d3_collection_size(), and asx3d3_multi().
398 size_t defidlen = strlen(defid);
403 size =
sizeof(
"<PointSet><GeoCoordinate geoSystem='\"GD\" \"WE\" \"longitude_first\"' point='' /></PointSet>");
405 size =
sizeof(
"<PointSet><Coordinate point='' /></PointSet>") + defidlen;
410 for (i=0; i<col->
ngeoms; i++)
412 subgeom = col->
geoms[i];
static size_t asx3d3_poly_size(const LWPOLY *poly, char *srs, int precision, int opts, const char *defid)
Compute the string space needed for the IndexedFaceSet representation of the polygon.
#define X3D_USE_GEOCOORDS(x)
#define POINTTYPE
LWTYPE numbers, used internally by PostGIS.
static size_t asx3d3_point_size(const LWPOINT *point, char *srs, int precision, int opts, const char *defid)
defid is the id of the coordinate can be used to hold other elements DEF='abc' transform='' etc...
static size_t asx3d3_line_size(const LWLINE *line, char *srs, int precision, int opts, const char *defid)