pub fn buffer<G>(
geometry: &G,
distance: f64,
join: JoinStrategy,
point: PointStrategy,
) -> Result<MultiPolygon<Polygon<G::Point>>, OverlayError>where
G: Geometry,
G::Kind: BufferStrategyForKind,
<<G::Point as Point>::Cs as CoordinateSystem>::Family: DefaultBuffer<<<G::Point as Point>::Cs as CoordinateSystem>::Family>,
<G::Kind as BufferStrategyForKind>::S: BufferStrategy<G, DefaultBufferStrategy<G>>,Expand description
Buffer a geometry using the public point and join strategies.
Mirrors boost::geometry::buffer from
boost/geometry/algorithms/detail/buffer/interface.hpp:246-273. Cartesian,
spherical, and geographic dispatch supports point, segment, linestring,
ring, polygon, box, and all three homogeneous multi-geometry kinds. Point
inputs use point, linear inputs use all five strategy roles, and areal
inputs use signed distance and join policies.
ยงErrors
Returns OverlayError::Unsupported for non-finite distances, asymmetric
areal distances, or degenerate linear inputs.