[PostGIS] #6023: Silent toplogy error in the result (face has multiple shells,mixed face labeling in ring)

PostGIS trac at osgeo.org
Sat Dec 27 03:24:24 PST 2025


#6023: Silent toplogy error in the result (face has multiple shells,mixed face
labeling in ring)
--------------------------------+------------------------
  Reporter:  Lars Aksel Opsahl  |      Owner:  strk
      Type:  defect             |     Status:  new
  Priority:  medium             |  Milestone:
 Component:  topology           |    Version:  3.6.x
Resolution:                     |   Keywords:  robustness
--------------------------------+------------------------
Comment (by strk):

 The problem seems to be that `ptarray_contains_point` finds the
 intersection point between edges 2,3 and 4 to be INSIDE the ring formed by
 edges 2 and 4.

 These are the relevant logs:
 {{{
 [lwgeom_topo.c:_lwt_AddFaceSplit:2198] _lwt_AddFaceSplit:
 lwt_be_getEdgeByFace(0) returned 4 edges
 [lwgeom_topo.c:_lwt_AddFaceSplit:2239] Edge 3 is not a known edge of the
 new ring
 [lwgeom_topo.c:_lwt_AddFaceSplit:2257] Edge 3 first point inside new ring
 [lwgeom_topo.c:_lwt_AddFaceSplit:2284] Edge 3 has new face on the left
 side
 }}}

 The problem is with "Edge 3 first point inside new ring", while it's
 instead on the boundary of it.
-- 
Ticket URL: <https://trac.osgeo.org/postgis/ticket/6023#comment:11>
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