Public Member Functions | Static Public Member Functions

geos::simplify::DouglasPeuckerSimplifier Class Reference

Simplifies a Geometry using the standard Douglas-Peucker algorithm. More...

#include <DouglasPeuckerSimplifier.h>

List of all members.

Public Member Functions

 DouglasPeuckerSimplifier (const geom::Geometry *geom)
void setDistanceTolerance (double tolerance)
 Sets the distance tolerance for the simplification.
std::auto_ptr< geom::GeometrygetResultGeometry ()

Static Public Member Functions

static std::auto_ptr
< geom::Geometry
simplify (const geom::Geometry *geom, double tolerance)

Detailed Description

Simplifies a Geometry using the standard Douglas-Peucker algorithm.

Ensures that any polygonal geometries returned are valid. Simple lines are not guaranteed to remain simple after simplification.

Note that in general D-P does not preserve topology - e.g. polygons can be split, collapse to lines or disappear holes can be created or disappear, and lines can cross. To simplify geometry while preserving topology use TopologyPreservingSimplifier. (However, using D-P is significantly faster).


Member Function Documentation

void geos::simplify::DouglasPeuckerSimplifier::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 non-negative. A tolerance value of zero is effectively a no-op.

Parameters:
distanceTolerance the approximation tolerance to use

The documentation for this class was generated from the following file: