Hi,
I tried to run the Overlay function for this heavy dataset https://we.tl/t-gshlI4TbCU
Both layers seem to have no topology errors but the Overlay function fails with an error
org.locationtech.jts.geom.TopologyException: found non-noded intersection between LINESTRING ( 95.49610823093388 4.949137070569244, 95.49623518653348 4.948912456969601 ) and LINESTRING ( 95.4962351860291 4.948912457861983, 95.49623518653348 4.948912456969593 ) [ (95.49623518627793, 4.948912457421728, NaN) ]
at org.locationtech.jts.noding.FastNodingValidator.checkValid(FastNodingValidator.java:140)
at org.locationtech.jts.geomgraph.EdgeNodingValidator.checkValid(EdgeNodingValidator.java:81)
at org.locationtech.jts.geomgraph.EdgeNodingValidator.checkValid(EdgeNodingValidator.java:46)
at org.locationtech.jts.operation.overlay.OverlayOp.computeOverlay(OverlayOp.java:231)
at org.locationtech.jts.operation.overlay.OverlayOp.getResultGeometry(OverlayOp.java:183)
at org.locationtech.jts.operation.overlay.OverlayOp.overlayOp(OverlayOp.java:86)
at org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp.getResultGeometry(SnapIfNeededOverlayOp.java:75)
at org.locationtech.jts.operation.overlay.snap.SnapIfNeededOverlayOp.overlayOp(SnapIfNeededOverlayOp.java:37)
at org.locationtech.jts.geom.GeometryOverlay.overlay(GeometryOverlay.java:76)
at org.locationtech.jts.geom.GeometryOverlay.union(GeometryOverlay.java:157)
at org.locationtech.jts.geom.Geometry.union(Geometry.java:1367)
at org.openjump.core.geomutils.algorithm.IntersectGeometries.nodeLines(IntersectGeometries.java:478)
at org.openjump.core.ui.plugin.tools.IntersectPolygonLayersPlugIn.runIntersectionNew(IntersectPolygonLayersPlugIn.java:205)
at org.openjump.core.ui.plugin.tools.IntersectPolygonLayersPlugIn.run(IntersectPolygonLayersPlugIn.java:127)
at com.vividsolutions.jump.workbench.ui.task.TaskMonitorManager$TaskWrapper.run(TaskMonitorManager.java:151)
What does this error mean, in which part of the operation it happens, and is there any way to get over it? I also tried a GDAL/GEOS based utility but it fails with similar error “TopologyException: found non-noded intersection between LINESTRING (104.098 0.627591, 104.098 0.627447) and LINESTRING (104.098 0.627484, 104.098 0.627447) at 104.09781931770398 0.62748351910904443".
-Jukka Rahkonen-