pyguymer3.geo.bufferSrc.buffer_Polygon¶
- pyguymer3.geo.bufferSrc.buffer_Polygon(poly, dist, /, *, debug=True, eps=1e-12, fill=1.0, fillSpace='EuclideanSpace', keepInteriors=True, nAng=9, nIter=100, prefix='.', ramLimit=1073741824, simp=0.1, tol=1e-10)[source]¶
Buffer a Polygon
This function reads in a Polygon (with an exterior and any number of interiors) that exists on the surface of the Earth and returns a [Multi]Polygon of the same Polygon buffered by a constant distance (in metres).
- Parameters:
poly (shapely.geometry.polygon.Polygon) – the Polygon
dist (float) – the Geodesic distance to buffer each point within the Polygon by (in metres)
debug (bool, optional) – print debug messages
eps (float, optional) – the tolerance of the Vincenty formula iterations
fill (float, optional) – the Euclidean or Geodesic distance to fill in between each point within the shapes by (in degrees or metres)
fillSpace (str, optional) – the geometric space to perform the filling in (either “EuclideanSpace” or “GeodesicSpace”)
keepInteriors (bool, optional) – keep the interiors of the Polygon
nAng (int, optional) – the number of angles around each point within the Polygon that are calculated when buffering
nIter (int, optional) – the maximum number of iterations (particularly the Vincenty formula)
prefix (str, optional) – change the name of the output debugging CSVs
ramLimit (int, optional) – the maximum RAM usage of each “large” array (in bytes)
simp (float, optional) – how much intermediary [Multi]Polygons are simplified by; negative values disable simplification (in degrees)
tol (float, optional) – the Euclidean distance that defines two points as being the same (in degrees)
- Returns:
buffs – the buffered Polygon
- Return type:
shapely.geometry.polygon.Polygon, shapely.geometry.multipolygon.MultiPolygon
Notes
According to the Shapely documentation for the method object.buffer() :
“Passed a distance of 0, buffer() can sometimes be used to “clean” self-touching or self-crossing polygons such as the classic “bowtie”. Users have reported that very small distance values sometimes produce cleaner results than 0. Your mileage may vary when cleaning surfaces.”
According to the Shapely documentation for the function shapely.geometry.polygon.orient() :
“A sign of 1.0 means that the coordinates of the product’s exterior ring will be oriented counter-clockwise.”
Copyright 2017 Thomas Guymer [1]
References