83 CU_ASSERT( out == NULL );
89 CU_ASSERT( out == NULL );
95 CU_ASSERT( out == NULL );
101 in =
lwgeom_from_text(
"CIRCULARSTRING(29.2893218813453 70.7106781186548,100 100,200 0)");
122 #ifndef SKIP_TEST_RETAIN_ANGLE
164 CU_ASSERT( out == NULL );
169 CU_ASSERT( out == NULL );
190 #ifndef SKIP_TEST_RETAIN_ANGLE
258 "2696000.553 1125699.831999999936670, "
259 "2695950.552000000141561 1125749.833000000100583, "
260 "2695865.195999999996275 1125835.189000)");
271 #ifndef SKIP_TEST_RETAIN_ANGLE
302 CU_ASSERT( out == NULL );
307 CU_ASSERT( out == NULL );
329 #ifndef SKIP_TEST_RETAIN_ANGLE
360 fprintf(stderr,
"linearization is not direction neutral:\n");
362 fprintf(stderr,
"OUT1: %s\n",
str);
365 fprintf(stderr,
"OUT2: %s\n",
str);
static char * lwgeom_to_text(const LWGEOM *geom, int prec)
static LWGEOM * lwgeom_from_text(const char *str)
void cu_error_msg_reset()
char cu_error_msg[MAX_CUNIT_ERROR_LENGTH+1]
#define ASSERT_INT_EQUAL(o, e)
#define ASSERT_STRING_EQUAL(o, e)
@ LW_LINEARIZE_TOLERANCE_TYPE_MAX_ANGLE
Tolerance expresses the maximum angle between the radii generating approximation line vertices,...
@ LW_LINEARIZE_TOLERANCE_TYPE_SEGS_PER_QUAD
Tolerance expresses the number of segments to use for each quarter of circle (quadrant).
@ LW_LINEARIZE_TOLERANCE_TYPE_MAX_DEVIATION
Tolerance expresses the maximum distance between an arbitrary point on the curve and the closest poin...
char lwgeom_same(const LWGEOM *lwgeom1, const LWGEOM *lwgeom2)
geom1 same as geom2 iff
void lwgeom_free(LWGEOM *geom)
LWGEOM * lwcurve_linearize(const LWGEOM *geom, double tol, LW_LINEARIZE_TOLERANCE_TYPE type, int flags)
uint32_t lwgeom_count_vertices(const LWGEOM *geom)
Count the total number of vertices in any LWGEOM.
@ LW_LINEARIZE_FLAG_SYMMETRIC
Symmetric linearization means that the output vertices would be the same no matter the order of the p...
@ LW_LINEARIZE_FLAG_RETAIN_ANGLE
Retain angle instructs the engine to try its best to retain the requested angle between generating ra...
char * lwgeom_to_wkt(const LWGEOM *geom, uint8_t variant, int precision, size_t *size_out)
WKT emitter function.
void lwgeom_reverse_in_place(LWGEOM *lwgeom)
Reverse vertex order of LWGEOM.