743{
747 GEOSGeometry* g1;
748 GEOSGeometry* g3;
749
751
752
754
756
758
759 if (directed)
760 {
761#if POSTGIS_GEOS_VERSION < 31100
764 return NULL;
765#else
766 g3 = GEOSLineMergeDirected(g1);
767#endif
768 }
769 else
770 {
771 g3 = GEOSLineMerge(g1);
772 }
773
775 GEOSSetSRID(g3, srid);
776
779
781
783}
char result[OUT_DOUBLE_BUFFER_SIZE]
void lwgeom_geos_error_minversion(const char *functionality, const char *minver)
GEOSGeometry * LWGEOM2GEOS(const LWGEOM *lwgeom, uint8_t autofix)
#define GEOS_FREE_AND_FAIL(...)
void lwgeom_geos_error(const char *fmt,...)
void(*) LWGEOM GEOS2LWGEOM)(const GEOSGeometry *geom, uint8_t want3d)
#define FLAGS_GET_Z(flags)
LWGEOM * lwgeom_clone_deep(const LWGEOM *lwgeom)
Deep clone an LWGEOM, everything is copied.
void lwnotice(const char *fmt,...) __attribute__((format(printf
Write a notice out to the notice handler.
static int lwgeom_is_empty(const LWGEOM *geom)
Return true or false depending on whether a geometry is an "empty" geometry (no vertices members)