You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Using SimpleNoder with OverlayNG generates a null pointer exception when geometry covers, but does not overlap.
NPE occurs with double floating point precision and fixed decimal precision.
Fixed decimal precision definition:
double precisionScale = 1e6;
PrecisionModel PM = new PrecisionModel(precisionScale);
Base Geometry
POLYGON ((-100 39.99, -100.01 40, -100.01 40.1, -100 40.11, -99.9 40.11, -99.89 40.1, -99.89 40, -99.9 39.99, -100 39.99))
Subtraction Geometry
MULTIPOLYGON (((-100 40, -100 40.1, -99.9 40, -100 40)))
[ERROR] 2023-10-19 14:11:10:147
java.lang.NullPointerException: null
at org.locationtech.jts.noding.SimpleNoder.computeIntersects(SimpleNoder.java:59) ~[jts-core-1.19.0.jar:?]
at org.locationtech.jts.noding.SimpleNoder.computeNodes(SimpleNoder.java:48) ~[jts-core-1.19.0.jar:?]
at org.locationtech.jts.operation.overlayng.EdgeNodingBuilder.node(EdgeNodingBuilder.java:186) ~[jts-core-1.19.0.jar:?]
at org.locationtech.jts.operation.overlayng.EdgeNodingBuilder.build(EdgeNodingBuilder.java:165) ~[jts-core-1.19.0.jar:?]
at org.locationtech.jts.operation.overlayng.OverlayNG.nodeEdges(OverlayNG.java:541) ~[jts-core-1.19.0.jar:?]
at org.locationtech.jts.operation.overlayng.OverlayNG.computeEdgeOverlay(OverlayNG.java:495) ~[jts-core-1.19.0.jar:?]
at org.locationtech.jts.operation.overlayng.OverlayNG.getResult(OverlayNG.java:483) ~[jts-core-1.19.0.jar:?]
at org.locationtech.jts.operation.overlayng.OverlayNG.overlay(OverlayNG.java:229) ~[jts-core-1.19.0.jar:?]
JTS TestBuilder Screenshot of the Geometries:
The text was updated successfully, but these errors were encountered:
ChicagoRaccoon
changed the title
NullPointerException thrown by SimpleNoder when geometries intersect but do not overlap
NullPointerException thrown by SimpleNoder when geometry covers but does not overlap
Oct 19, 2023
Using SimpleNoder with OverlayNG generates a null pointer exception when geometry covers, but does not overlap.
NPE occurs with double floating point precision and fixed decimal precision.
Fixed decimal precision definition:
Double floating point precision definition:
Differencing call:
Console output:
JTS TestBuilder Screenshot of the Geometries:
![NPE with SimpleNoder](https://private-user-images.githubusercontent.com/16108280/276712583-7cff3485-b3d3-447a-9a2c-3602cedf135c.PNG?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjM5ODIzODYsIm5iZiI6MTcyMzk4MjA4NiwicGF0aCI6Ii8xNjEwODI4MC8yNzY3MTI1ODMtN2NmZjM0ODUtYjNkMy00NDdhLTlhMmMtMzYwMmNlZGYxMzVjLlBORz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MTglMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODE4VDExNTQ0NlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWJhMTRlYWY3YzMyMzdmMjI3MmI1MDc0ZDUyMGVmNTFiNmQ1NGI5MzQyMjVlZTY0NWZjNDE3MzI1MzIyYzI5MjUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.ZTHTVEMxztNNfugGK3JWpTpK-rWFO6JUytynlh0AYZo)
The text was updated successfully, but these errors were encountered: