110{
113 char *tmp;
114
116
117
122 CU_ASSERT_STRING_EQUAL("TIN EMPTY", tmp);
125
126
131 CU_ASSERT_STRING_EQUAL("TIN(((0 1,2 3,4 5,0 1)))", tmp);
134
135
140 CU_ASSERT_STRING_EQUAL("TINM(((0 1 2,3 4 5,6 7 8,0 1 2)))", tmp);
143
144
146 CU_ASSERT_STRING_EQUAL(
"can not mix dimensionality in a geometry",
cu_error_msg);
149
150
152 CU_ASSERT_STRING_EQUAL(
"geometry contains non-closed rings",
cu_error_msg);
155
156
158 CU_ASSERT_STRING_EQUAL(
"geometry contains non-closed rings",
cu_error_msg);
161
162
164 CU_ASSERT_STRING_EQUAL(
"geometry contains non-closed rings",
cu_error_msg);
167
168
170 CU_ASSERT_STRING_EQUAL(
"triangle must have exactly 4 points",
cu_error_msg);
173
174
176 CU_ASSERT_STRING_EQUAL(
"triangle must have exactly 4 points",
cu_error_msg);
179
180
182 CU_ASSERT_STRING_EQUAL(
"parse error - invalid geometry",
cu_error_msg);
185
186
191 CU_ASSERT_STRING_EQUAL("TIN EMPTY", tmp);
194
195
196 geom =
lwgeom_from_wkt(
"TIN(((0 0 0,0 0 1,0 1 0,0 0 0)),((0 0 0,0 1 0,1 0 0,0 0 0)),((0 0 0,1 0 0,0 0 1,0 0 0)),((1 0 0,0 1 0,0 0 1,1 0 0)))",
LW_PARSER_CHECK_NONE);
201 CU_ASSERT_STRING_EQUAL("TIN(((0 0 0,0 0 1,0 1 0,0 0 0)),((0 0 0,0 1 0,1 0 0,0 0 0)),((0 0 0,1 0 0,0 0 1,0 0 0)),((1 0 0,0 1 0,0 0 1,1 0 0)))", tmp);
204
205
206 geom =
lwgeom_from_wkt(
"TIN(((0 0 0 0,0 0 1 0,0 1 0 2,0 0 0 0)),((0 0 0 0,0 1 0 0,1 0 0 4,0 0 0 0)),((0 0 0 0,1 0 0 0,0 0 1 6,0 0 0 0)),((1 0 0 0,0 1 0 0,0 0 1 0,1 0 0 0)))",
LW_PARSER_CHECK_NONE);
212 CU_ASSERT_STRING_EQUAL("TIN(((0 0 0 0,0 0 1 0,0 1 0 2,0 0 0 0)),((0 0 0 0,0 1 0 0,1 0 0 4,0 0 0 0)),((0 0 0 0,1 0 0 0,0 0 1 6,0 0 0 0)),((1 0 0 0,0 1 0 0,0 0 1 0,1 0 0 0)))", tmp);
215
216
217 geom =
lwgeom_from_wkt(
"SRID=4326;TIN(((0 0 0,0 0 1,0 1 0,0 0 0)),((0 0 0,0 1 0,1 0 0,0 0 0)),((0 0 0,1 0 0,0 0 1,0 0 0)),((1 0 0,0 1 0,0 0 1,1 0 0)))",
LW_PARSER_CHECK_NONE);
220 CU_ASSERT_EQUAL(geom->
srid, 4326);
222 CU_ASSERT_STRING_EQUAL("SRID=4326;TIN(((0 0 0,0 0 1,0 1 0,0 0 0)),((0 0 0,0 1 0,1 0 0,0 0 0)),((0 0 0,1 0 0,0 0 1,0 0 0)),((1 0 0,0 1 0,0 0 1,1 0 0)))", tmp);
225
226
232}
GSERIALIZED * gserialized_from_lwgeom(LWGEOM *geom, size_t *size)
Allocate a new GSERIALIZED from an LWGEOM.
uint32_t gserialized_get_type(const GSERIALIZED *g)
Extract the geometry type from the serialized form (it hides in the anonymous data area,...
void cu_error_msg_reset()
char cu_error_msg[MAX_CUNIT_ERROR_LENGTH+1]
void lwgeom_free(LWGEOM *geom)
#define LW_PARSER_CHECK_NONE
char * lwgeom_to_ewkt(const LWGEOM *lwgeom)
Return an alloced string.
#define FLAGS_GET_M(flags)
#define SRID_UNKNOWN
Unknown SRID value.
LWGEOM * lwgeom_from_wkt(const char *wkt, const char check)