[PostGIS] #5862: TopoGeo_add* silently corrupt topology: edge crosses edge, mixed face labeling in ring

PostGIS trac at osgeo.org
Tue Apr 15 02:30:48 PDT 2025


#5862: TopoGeo_add* silently corrupt topology: edge crosses edge, mixed face
labeling in ring
--------------------------------+------------------------
  Reporter:  Lars Aksel Opsahl  |      Owner:  strk
      Type:  defect             |     Status:  new
  Priority:  high               |  Milestone:
 Component:  topology           |    Version:  master
Resolution:                     |   Keywords:  robustness
--------------------------------+------------------------
Comment (by strk):

 > Can this info be used to throw an topology exception ?

 I've been thinking for a long time about exposing a function capable of
 SPOTTING those occurrences. It's not very easy to do at the moment with
 the PostGIS functions we have because what we are looking for is the
 existance of distinct vertices that are closer than the topology tolerance
 (easier) but also vertices that are closer than the topology tolerance
 from SEGMENTS while not being *endpoints* of the segment.

 The way such computation could be done NOW, with the functions we have,
 would be to project each vertex against each segment within tolerance and
 report if that projected point is NOT a vertex.

 I guess I could work on such internal function but I wonder if any such
 information would ALSO be useful to have exposed at the SQL level as a
 standalone function. What would that be called, if we want to expose it ?
-- 
Ticket URL: <https://trac.osgeo.org/postgis/ticket/5862#comment:15>
PostGIS <http://trac.osgeo.org/postgis/>
The PostGIS Trac is used for bug, enhancement & task tracking, a user and developer wiki, and a view into the subversion code repository of PostGIS project.


More information about the postgis-tickets mailing list