271{
272 char *x3dtype;
273 uint32_t i;
274 int dimension=2;
275
278 x3dtype="";
279
280
282 {
284 x3dtype = "PointSet";
285 if ( dimension == 2 ){
286 x3dtype = "Polypoint2D";
288 }
289 else {
291 }
292 break;
294 x3dtype = "IndexedLineSet";
298 break;
300 x3dtype = "IndexedFaceSet";
304 break;
305 default:
307 return 0;
308 }
309 if (dimension == 3){
312 else
314 }
315
316 for (i=0; i<col->
ngeoms; i++)
317 {
318 subgeom = col->
geoms[i];
320 {
323 }
325 {
328 }
330 {
333 }
334 }
335
336
337 if (dimension == 3){
339 }
342
343}
const char * lwtype_name(uint8_t type)
Return the type name string associated with a type number (e.g.
#define LW_X3D_FLIP_XY
Macros for specifying X3D options.
#define POINTTYPE
LWTYPE numbers, used internally by PostGIS.
#define FLAGS_GET_Z(flags)
#define X3D_USE_GEOCOORDS(x)
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
static int asx3d3_mpoly_coordindex_sb(const LWMPOLY *psur, stringbuffer_t *sb)
static int asx3d3_line_coords_sb(const LWLINE *line, int precision, int opts, stringbuffer_t *sb)
static int asx3d3_point_sb(const LWPOINT *point, __attribute__((__unused__)) char *srs, int precision, int opts, __attribute__((__unused__)) const char *defid, stringbuffer_t *sb)
static int asx3d3_mline_coordindex_sb(const LWMLINE *mgeom, stringbuffer_t *sb)
static int asx3d3_poly_sb(const LWPOLY *poly, __attribute__((__unused__)) char *srs, int precision, int opts, __attribute__((__unused__)) int is_patch, __attribute__((__unused__)) const char *defid, stringbuffer_t *sb)
Compute the X3D coordinates of the polygon and add to string buffer.
int stringbuffer_aprintf(stringbuffer_t *s, const char *fmt,...)
Appends a formatted string to the current string buffer, using the format and argument list provided.