Definition at line 932 of file lwgeom_topo.c.
940 LWDEBUG(1,
"calling lwt_be_getEdgeById");
942 LWDEBUGF(1,
"lwt_be_getEdgeById returned %p", *oldedge);
945 LWDEBUGF(1,
"lwt_be_getEdgeById returned NULL and set i=%d", i);
953 lwerror(
"SQL/MM Spatial exception - non-existent edge");
958 lwerror(
"Backend coding error: getEdgeById callback returned NULL "
959 "but numelements output parameter has value %d "
960 "(expected 0 or 1)", i);
969 if ( ! skipISOChecks )
971 LWDEBUG(1,
"calling lwt_be_ExistsCoincidentNode");
974 LWDEBUG(1,
"lwt_be_ExistsCoincidentNode returned");
976 lwerror(
"SQL/MM Spatial exception - coincident node");
979 LWDEBUG(1,
"lwt_be_ExistsCoincidentNode returned");
987 lwerror(
"could not split edge by point ?");
994 lwerror(
"lwgeom_as_lwcollection returned NULL");
997 if (split_col->
ngeoms < 2) {
1000 lwerror(
"SQL/MM Spatial exception - point not on edge");
1008 LWDEBUGF(1,
"returning split col: %s", wkt);
void lwgeom_free(LWGEOM *geom)
LWGEOM * lwgeom_split(const LWGEOM *lwgeom_in, const LWGEOM *blade_in)
char * lwgeom_to_wkt(const LWGEOM *geom, uint8_t variant, int precision, size_t *size_out)
WKT emitter function.
LWCOLLECTION * lwgeom_as_lwcollection(const LWGEOM *lwgeom)
#define LWDEBUG(level, msg)
#define LWDEBUGF(level, msg,...)
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
const char * lwt_be_lastErrorMessage(const LWT_BE_IFACE *be)
LWT_ISO_EDGE * lwt_be_getEdgeById(LWT_TOPOLOGY *topo, const LWT_ELEMID *ids, uint64_t *numelems, int fields)
int lwt_be_ExistsCoincidentNode(LWT_TOPOLOGY *topo, LWPOINT *pt)
static void _lwt_release_edges(LWT_ISO_EDGE *edges, int num_edges)
const LWT_BE_IFACE * be_iface
References _lwt_release_edges(), LWT_TOPOLOGY_T::be_iface, LWDEBUG, LWDEBUGF, lwerror(), lwfree(), lwgeom_as_lwcollection(), lwgeom_free(), lwgeom_split(), lwgeom_to_wkt(), lwt_be_ExistsCoincidentNode(), lwt_be_getEdgeById(), lwt_be_lastErrorMessage(), LWT_COL_EDGE_ALL, LWCOLLECTION::ngeoms, and WKT_EXTENDED.
Referenced by lwt_ModEdgeSplit(), and lwt_NewEdgesSplit().