[geos-devel] Re: [GEOS] #244: Buffer fails to buffer elements of multpolygon
#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: | +--- Comment (by strk): bug244-simp1.xml is a simplification of the testcases. The input multipolygon contains 5 polygons, none with holes. 2 are returned by buffer(0). -- Ticket URL: http://trac.osgeo.org/geos/ticket/244#comment:5 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
[geos-devel] Re: [GEOS] #244: Buffer fails to buffer elements of multpolygon
#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: | +--- Comment (by strk): bug244-simp2.xml yet another simplification. This time it's 4 polygons input. Note that dropping any more polygon from input results in a correct output. Keeping all of 4 polygons results in a single polygon output orig | : MultiPolygon[BS] with 3 elements : Polygon[] with 1 rings :ring 0 has 204 points : Polygon[] with 1 rings :ring 0 has 404 points : Polygon[] with 1 rings :ring 0 has 25 points : buffered | : Polygon[BS] with 1 rings :ring 0 has 204 points : -- Ticket URL: http://trac.osgeo.org/geos/ticket/244#comment:6 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
[geos-devel] Re: [GEOS] #244: Buffer fails to buffer elements of multpolygon
#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: | +--- Comment (by strk): Ehm, you may have noticed the input polygons are 3, not 4. The rest applies. -- Ticket URL: http://trac.osgeo.org/geos/ticket/244#comment:7 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
[geos-devel] Re: [GEOS] #244: Buffer fails to buffer elements of multpolygon
#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
[geos-devel] Re: [GEOS] #244: Buffer fails to buffer elements of multpolygon
#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: | +--- Comment (by strk): Confirmed, still a problem. From 52 polygons to 48. Input is found to be valid. This is an ugly bug occasionally popping out in different situations. For example the geom in bug #219 also trigger a silent eat-up of a component (well, input is invalid in that case). Another case (giving more informations about how bad this bug is) is TestBufferExternal2.xml, which contain a test in which you get an EMPTY geometry from a buffer operation depending on -ffloat-store. Check buildbot for the history of this, or build w/out -ffloat-store on a 32bit system and run make check. -- Ticket URL: http://trac.osgeo.org/geos/ticket/244#comment:1 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
[geos-devel] Re: [GEOS] #244: Buffer fails to buffer elements of multpolygon
#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: | +--- Comment (by strk): I've verified that all components of input geometry are Polygons with no holes. All are valid. All cleanly buffer(0)... -- Ticket URL: http://trac.osgeo.org/geos/ticket/244#comment:3 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
Re: [geos-devel] Re: [GEOS] #244: Buffer fails to buffer elements of multpolygon
Works fine in JTS. Input: [[ MULTIPOLYGON - 52 elements, 3038 pts ]] Output: [[ MULTIPOLYGON - 52 elements, 3038 pts ]] GEOS wrote: #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: | +--- Comment (by strk): I attach an XML tester, Martin any tip from your side ? How does JTS deal with that ? ___ geos-devel mailing list geos-devel@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/geos-devel -- Martin Davis Senior Technical Architect Refractions Research, Inc. (250) 383-3022 ___ geos-devel mailing list geos-devel@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/geos-devel