[geos-devel] Re: [GEOS] #488: TopologyException unioning valid geometries [JTS fails]

GEOS geos-trac at osgeo.org
Wed Dec 14 20:04:59 EST 2011

#488: TopologyException unioning valid geometries [JTS fails]
 Reporter:  sky         |        Owner:  geos-devel@…              
     Type:  defect      |       Status:  reopened                  
 Priority:  major       |    Milestone:  GEOS Future               
Component:  Default     |      Version:  svn-trunk                 
 Severity:  Unassigned  |   Resolution:                            
 Keywords:  jts fails   |  

Comment(by mdavis):

 This issue is caused by the fact that the input geometry has vertices with
 very high precision, and nearly-coincident line segments.  This occurs
 both internal to and between geometries.

 Attached is a reduced test case containing only two polygons and using
 binary union directly.

 This is a common cause of robustness failure in the current JTS/GEOS
 overlay algorithm.  Fixing this will require some deep design changes in
 JTS and/or better heuristics for handling failures.

 A workaround is to reduce the precision of the input geometries.  Using 10
 decimal places seems to work.

Ticket URL: <http://trac.osgeo.org/geos/ticket/488#comment:24>
GEOS <http://geos.refractions.net/>
GEOS (Geometry Engine - Open Source) is a C++ port of the Java Topology Suite (JTS).

More information about the geos-devel mailing list