[PostGIS] #5886: snapping edge 1 to new node moves it past edge 2

PostGIS trac at osgeo.org
Mon Apr 28 04:11:52 PDT 2025


#5886: snapping edge 1 to new node moves it past edge 2
-----------------------+---------------------------
  Reporter:  strk      |      Owner:  strk
      Type:  defect    |     Status:  new
  Priority:  medium    |  Milestone:  PostGIS 3.6.0
 Component:  topology  |    Version:  3.5.x
Resolution:            |   Keywords:  robustness
-----------------------+---------------------------
Comment (by strk):

 The problem at hand is that when we snap the existing edge (first line
 entered in the topology) to the existing top vertex of edge 2, the edge is
 moved enough to cross the other (bottom) vertex of edge 2.

 A solution could be to FIRST snap edge 1 to the other vertex, which is
 closer, but the current code ASSUMES the topology is never left in this
 state of having vertices closer than topology tolerance to segments
 without enforcing such characteristic.

 So another solution would be to NEVER allow a topology to have segments at
 closer-than-topology-precision distance from vertices that are not
 endpoints of such segments. An experimental change in this direction is in
 https://git.osgeo.org/gitea/postgis/postgis/pulls/243

 For the sake of analysis it would be useful to include a location in
 topological errors like the one triggered by this case (see #5889), and
 would also be useful to have tools to check if a topology is in such
 "unstable" state (see
 https://trac.osgeo.org/postgis/ticket/5862#comment:16).
-- 
Ticket URL: <https://trac.osgeo.org/postgis/ticket/5886#comment:2>
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