JTS Topology Suite version 1.13

## com.vividsolutions.jts.simplify
Class DouglasPeuckerSimplifier

    java.lang.Object
      com.vividsolutions.jts.simplify.DouglasPeuckerSimplifier

    public class DouglasPeuckerSimplifier

extends java.lang.Object

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. All geometry types are handled. Empty and point geometries are returned unchanged.

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).

Version:
  1.7

Constructor Summary
`DouglasPeuckerSimplifier(Geometry inputGeom)`

Method Summary
`Geometry` `getResultGeometry()`
`void` `setDistanceTolerance(double distanceTolerance)` Sets the distance tolerance for the simplification.
`void` `setEnsureValid(boolean isEnsureValidTopology)` Controls whether simplified polygons will be "fixed" to have valid topology.
`static Geometry` `simplify(Geometry geom, double distanceTolerance)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### DouglasPeuckerSimplifier

    public DouglasPeuckerSimplifier(Geometry inputGeom)

Method Detail

### simplify

    public static Geometry simplify(Geometry geom,
                                    double distanceTolerance)

### setDistanceTolerance

    public void setDistanceTolerance(double distanceTolerance)

  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.

  Parameters:
    `distanceTolerance` - the approximation tolerance to use

### setEnsureValid

    public void setEnsureValid(boolean isEnsureValidTopology)

  Controls whether simplified polygons will be "fixed" to have valid topology. The caller may choose to disable this because:
  - valid topology is not required
  - fixing topology is a relative expensive operation
  - in some pathological cases the topology fixing operation may either fail or run for too long
  The default is to fix polygon topology.

  Parameters:
    `isEnsureValidTopology` -

### getResultGeometry

    public Geometry getResultGeometry()

JTS Topology Suite version 1.13