[postgis-devel] [PostGIS] #1735: ST_MakeValid: exception on geometry
PostGIS
trac at osgeo.org
Fri Mar 30 06:42:01 PDT 2012
#1735: ST_MakeValid: exception on geometry
-----------------------+----------------------------------------------------
Reporter: aperi2007 | Owner: strk
Type: defect | Status: assigned
Priority: medium | Milestone: PostGIS 2.0.1
Component: postgis | Version: trunk
Keywords: |
-----------------------+----------------------------------------------------
Comment(by strk):
So, GEOSSymDifference is called by BuildArea and passed the outer rings of
polygons returned by Polygonize. Supposedly these polygons should all be
already noded so there would be no reason for the geos noder to complain.
The offending input to BuildArea is this:
{{{
0105000000050000000102000000050000000000000087523A41000000402C62524100000000B0523A41000000C01E6252410000000084523A41000000C023625241858C4F2488523A4151F8EEAC2562524111A0F52288523A414F50F3AC2562524101020000000300000011A0F52288523A414F50F3AC2562524100A0F52288523A414F50F3AC25625241A871502388523A4158FEF2AC25625241010200000004000000A871502388523A4158FEF2AC25625241A0E6602488523A417108F2AC2562524121E7602488523A417108F2AC25625241A871502388523A4158FEF2AC25625241010200000002000000A871502388523A4158FEF2AC2562524111A0F52288523A414F50F3AC2562524101020000000400000011A0F52288523A414F50F3AC25625241D59FF52288523A414F50F3AC25625241000000007F523A4100000080256252410000000087523A41000000402C625241
}}}
Which is a multilinestring composed by 5 short lines.
Surprising enough, ST_Relate of the geometry to self has NO BOUNDARY
INTERSECTION !!
{{{
with inp as ( select
'0105000000050000000102000000050000000000000087523A41000000402C62524100000000B0523A41000000C01E6252410000000084523A41000000C023625241858C4F2488523A4151F8EEAC2562524111A0F52288523A414F50F3AC2562524101020000000300000011A0F52288523A414F50F3AC2562524100A0F52288523A414F50F3AC25625241A871502388523A4158FEF2AC25625241010200000004000000A871502388523A4158FEF2AC25625241A0E6602488523A417108F2AC2562524121E7602488523A417108F2AC25625241A871502388523A4158FEF2AC25625241010200000002000000A871502388523A4158FEF2AC2562524111A0F52288523A414F50F3AC2562524101020000000400000011A0F52288523A414F50F3AC25625241D59FF52288523A414F50F3AC25625241000000007F523A4100000080256252410000000087523A41000000402C625241'::geometry
as a ) select st_relate(a, a) from inp;
1FFFFFFF2
}}}
That's surely a problem !
--
Ticket URL: <http://trac.osgeo.org/postgis/ticket/1735#comment:12>
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-devel
mailing list