#244: Buffer fails to buffer elements of multpolygon
------------------------+---------------------------------------------------
Reporter: pramsey | Owner: geos-devel@lists.osgeo.org
Type: defect | Status: new
Priority: major | Milestone: 3.1.1
Component: Default | Version: 3.0.3
Severity: Unassigned | Resolution:
Keywords: |
------------------------+---------------------------------------------------
Changes (by strk):
* cc: mbda...@refractions.net (added)
Comment:
Alright, got to build JTS correctly and added debugging traces there.
So far I'm in BufferBuilder, where depths are computed and result edges
found.
JTS and GEOS differ in the depths they compute:
JTS goes like this:
(1)
dirEdge 0 inResult:false isArea:true leftDepth:1 rightDepth:0
dirEdge 1 inResult:true isArea:true leftDepth:0 rightDepth:1
(2)
dirEdge 0 inResult:true isArea:true leftDepth:0 rightDepth:1
dirEdge 1 inResult:false isArea:true leftDepth:1 rightDepth:0
(3)
dirEdge 0 inResult:false isArea:true leftDepth:1 rightDepth:0
dirEdge 1 inResult:true isArea:true leftDepth:0 rightDepth:1
GEOS, on the other hand, gets to compute depths > 1 for polygon 2 and 3
(the ones
that disappear from output):
(1) <--- FINE
dirEdge 0 inResult:0 isArea:1 leftDepth:1 rightDepth:0
dirEdge 1 inResult:1 isArea:1 leftDepth:0 rightDepth:1
(2) <--- BOGUS DEPTHS !
dirEdge 0 inResult:0 isArea:1 leftDepth:1 rightDepth:2
dirEdge 1 inResult:0 isArea:1 leftDepth:2 rightDepth:1
(3) <--- BOGUS DEPTHS !
dirEdge 0 inResult:0 isArea:1 leftDepth:2 rightDepth:1
dirEdge 1 inResult:0 isArea:1 leftDepth:1 rightDepth:2
Martin, I'll keep going, if anything rings a bell there please let me know
:)
--
Ticket URL: <http://trac.osgeo.org/geos/ticket/244#comment:9>
GEOS <http://geos.refractions.net/>
GEOS (Geometry Engine - Open Source) is a C++ port of the Java Topology Suite
(JTS).
_______________________________________________
geos-devel mailing list
geos-devel@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/geos-devel