[geos-devel] [GEOS] #743: Number of buffered points not always a multiple of quadrantSegments

GEOS geos-trac at osgeo.org
Mon Aug 17 17:27:51 PDT 2015


#743: Number of buffered points not always a multiple of quadrantSegments
-----------------------+--------------------------
 Reporter:  mwtoews    |      Owner:  geos-devel@…
     Type:  defect     |     Status:  new
 Priority:  major      |  Milestone:  3.5.1
Component:  Default    |    Version:  3.5.0
 Severity:  Annoyance  |   Keywords:
-----------------------+--------------------------
 Using Buffer with quadrantSegments, it is expected that the number of
 unique points is quadrantSegments * 4. However, for some quadrantSegments
 there is an extra point that is a near duplicate of the last.

 For example quadrantSegments = 13, using either Shapely or PostGIS:
 {{{
 -- PostGIS
 SELECT ST_AsText(ST_Buffer(ST_MakePoint(0, 0), 1.0, 13));
 # Shapely
 from shapely.geometry import Point
 Point(0, 0).buffer(1.0, 13).wkt
 }}}
 results with 53 unique points (or 54 with repeat last) `POLYGON((1 0,...,1
 1.44557759859665e-14,1 0))`, where the second last is within machine
 epsilon distance of the last coordinate. This example for quadrantSegments
 = 13 should have 52 unique points, or 53 points for a closed polygon.

 This is not an isolated case for quadrantSegments = 13; same also for: 13,
 15, 16, 17, 20, 22, 25, 26, 28, 31, 32, 38, 39, 42, 43, 45, 46, 47, 49,
 50, 51, 53, 54, 56, 57, 62, 64, 67, 68, 71, 75, 76, 78, 81, 83, 84, 85,
 89, 90, ...

 It seems there are no issues with JTS on this issue.

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


More information about the geos-devel mailing list