Changes between Initial Version and Version 1 of Ticket #1051, comment 26


Ignore:
Timestamp:
Oct 7, 2020, 4:34:15 PM (4 years ago)
Author:
mdavis

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #1051, comment 26

    initial v1  
    2323The reason for this is because the `SegmentNodeComparator` algorithm is slightly non-commutative as it stands in GEOS. This is due to the assumption that the nodes being compared are very close to the segment they are assigned to, so that their relative octant is the same as or adjacent to the segment octant.  This assumption doesn't hold in some situations when using a snapping tolerance. I.e. a node near a segment endpoint may actually lie far enough from the segment that it does not lie in the same or an adjacent octant).
    2424
    25 JTS fixed this last year in [https://github.com/locationtech/jts/pull/399 PR 399], with [https://github.com/locationtech/jts/blob/master/modules/core/src/main/java/org/locationtech/jts/noding/SegmentNode.java#L75-L76 this code].  I verified that this fix solves this test case.
     25JTS fixed this in March 2019 in [https://github.com/locationtech/jts/pull/399 PR 399], with [https://github.com/locationtech/jts/blob/master/modules/core/src/main/java/org/locationtech/jts/noding/SegmentNode.java#L75-L76 this code] (released in JTS 1.17).  I verified that this fix solves this test case.