GEOS
3.9.0dev

Simplifies a geometry, ensuring that the result is a valid geometry having the same dimension and number of components as the input. More...
#include <TopologyPreservingSimplifier.h>
Public Member Functions  
TopologyPreservingSimplifier (const geom::Geometry *geom)  
void  setDistanceTolerance (double tolerance) 
Sets the distance tolerance for the simplification. More...  
std::unique_ptr< geom::Geometry >  getResultGeometry () 
Static Public Member Functions  
static std::unique_ptr < geom::Geometry >  simplify (const geom::Geometry *geom, double tolerance) 
Simplifies a geometry, ensuring that the result is a valid geometry having the same dimension and number of components as the input.
The simplification uses a maximum distance difference algorithm similar to the one used in the DouglasPeucker algorithm.
In particular, if the input is an areal geometry ( Polygon or MultiPolygon )
void geos::simplify::TopologyPreservingSimplifier::setDistanceTolerance  (  double  tolerance  ) 
Sets the distance tolerance for the simplification.
All vertices in the simplified geometry will be within this distance of the original geometry. The tolerance value must be nonnegative. A tolerance value of zero is effectively a noop.
tolerance  the approximation tolerance to use 