PostGIS  2.5.7dev-r@@SVN_REVISION@@

◆ out_x3d3_test_geoms()

static void out_x3d3_test_geoms ( void  )
static

do_x3d3_test( "POLYGON((0 1 3,2 3 3,4 5 3,0 1 3),(6 7 3,8 9 3,10 11 3,6 7 3))", "", NULL, 0);

do_x3d3_test( "GEOMETRYCOLLECTION(POINT(0 1 3),LINESTRING(2 3 3,4 5 3))", "", NULL, 0);

do_x3d3_test( "GEOMETRYCOLLECTION EMPTY", "", NULL, 0);

Definition at line 84 of file cu_out_x3d.c.

85 {
86  /* Linestring */
88  "LINESTRING(0 1 5,2 3 6,4 5 7)",
89  "<LineSet vertexCount='3'><Coordinate point='0 1 5 2 3 6 4 5 7' /></LineSet>",
90  NULL, 0, 0);
91 
92  /* Polygon **/
94  "POLYGON((15 10 3,13.536 6.464 3,10 5 3,6.464 6.464 3,5 10 3,6.464 13.536 3,10 15 3,13.536 13.536 3,15 10 3))",
95  "<IndexedFaceSet convex='false' coordIndex='0 1 2 3 4 5 6 7'><Coordinate point='15 10 3 13.536 6.464 3 10 5 3 6.464 6.464 3 5 10 3 6.464 13.536 3 10 15 3 13.536 13.536 3 ' /></IndexedFaceSet>",
96  NULL, 3, 0);
97 
98  /* TODO: Polygon - with internal ring - the answer is clearly wrong */
104  /* 2D MultiPoint */
105  do_x3d3_test(
106  "MULTIPOINT(0 1,2 3,4 5)",
107  "<Polypoint2D point='0 1 2 3 4 5 ' />",
108  NULL, 0, 0);
109 
110  /* 3D MultiPoint */
111  do_x3d3_test(
112  "MULTIPOINT Z(0 1 1,2 3 4,4 5 5)",
113  "<PointSet ><Coordinate point='0 1 1 2 3 4 4 5 5 ' /></PointSet>",
114  NULL, 0, 0);
115  /* 3D Multiline */
116  do_x3d3_test(
117  "MULTILINESTRING Z((0 1 1,2 3 4,4 5 5),(6 7 5,8 9 8,10 11 5))",
118  "<IndexedLineSet coordIndex='0 1 2 -1 3 4 5'><Coordinate point='0 1 1 2 3 4 4 5 5 6 7 5 8 9 8 10 11 5 ' /></IndexedLineSet>",
119  NULL, 0, 0);
120 
121  /* MultiPolygon */
122  do_x3d3_test(
123  "MULTIPOLYGON(((0 1 1,2 3 1,4 5 1,0 1 1)),((6 7 1,8 9 1,10 11 1,6 7 1)))",
124  "<IndexedFaceSet convex='false' coordIndex='0 1 2 -1 3 4 5'><Coordinate point='0 1 1 2 3 1 4 5 1 6 7 1 8 9 1 10 11 1 ' /></IndexedFaceSet>",
125  NULL, 0, 0);
126 
127  /* PolyhedralSurface */
128  do_x3d3_test(
129  "POLYHEDRALSURFACE( ((0 0 0, 0 0 1, 0 1 1, 0 1 0, 0 0 0)), ((0 0 0, 0 1 0, 1 1 0, 1 0 0, 0 0 0)), ((0 0 0, 1 0 0, 1 0 1, 0 0 1, 0 0 0)), ((1 1 0, 1 1 1, 1 0 1, 1 0 0, 1 1 0)), ((0 1 0, 0 1 1, 1 1 1, 1 1 0, 0 1 0)), ((0 0 1, 1 0 1, 1 1 1, 0 1 1, 0 0 1)) )",
130  "<IndexedFaceSet convex='false' coordIndex='0 1 2 3 -1 4 5 6 7 -1 8 9 10 11 -1 12 13 14 15 -1 16 17 18 19 -1 20 21 22 23'><Coordinate point='0 0 0 0 0 1 0 1 1 0 1 0 0 0 0 0 1 0 1 1 0 1 0 0 0 0 0 1 0 0 1 0 1 0 0 1 1 1 0 1 1 1 1 0 1 1 0 0 0 1 0 0 1 1 1 1 1 1 1 0 0 0 1 1 0 1 1 1 1 0 1 1' /></IndexedFaceSet>",
131  NULL, 0, 0);
132 
133  /* TODO: returns garbage at moment correctly implement GeometryCollection -- */
139  /* TODO: Implement Empty GeometryCollection correctly or throw a not-implemented */
145  /* CircularString */
147  "CIRCULARSTRING(-2 0 1,0 2 1,2 0 1,0 2 1,2 4 1)",
148  "lwgeom_to_x3d3: 'CircularString' geometry type not supported");
149 
150  /* CompoundCurve */
152  "COMPOUNDCURVE(CIRCULARSTRING(0 0 1,1 1 1,1 0 1),(1 0 1,0 1 1))",
153  "lwgeom_to_x3d3: 'CompoundCurve' geometry type not supported");
154 
155 }
static void do_x3d3_unsupported(char *in, char *out)
Definition: cu_out_x3d.c:38
static void do_x3d3_test(char *in, char *out, char *srs, int precision, int option)
Definition: cu_out_x3d.c:20

References do_x3d3_test(), and do_x3d3_unsupported().

Referenced by out_x3d_suite_setup().

Here is the call graph for this function:
Here is the caller graph for this function: