JTS Topology Suite version 1.13

## com.vividsolutions.jts.precision
Class GeometryPrecisionReducer

    java.lang.Object
      com.vividsolutions.jts.precision.GeometryPrecisionReducer

    public class GeometryPrecisionReducer

extends java.lang.Object

Reduces the precision of a `Geometry` according to the supplied `PrecisionModel`, ensuring that the result is topologically valid.

Version:
  1.12

Constructor Summary
`GeometryPrecisionReducer(PrecisionModel pm)`

Method Summary
`Geometry` `reduce(Geometry geom)`
`static Geometry` `reduce(Geometry g, PrecisionModel precModel)` Convenience method for doing precision reduction on a single geometry, with collapses removed and keeping the geometry precision model the same, and preserving polygonal topology.
`static Geometry` `reducePointwise(Geometry g, PrecisionModel precModel)` Convenience method for doing pointwise precision reduction on a single geometry, with collapses removed and keeping the geometry precision model the same, but NOT preserving valid polygonal topology.
`void` `setChangePrecisionModel(boolean changePrecisionModel)` Sets whether the `PrecisionModel` of the new reduced Geometry will be changed to be the `PrecisionModel` supplied to specify the precision reduction.
`void` `setPointwise(boolean isPointwise)` Sets whether the precision reduction will be done in pointwise fashion only.
`void` `setRemoveCollapsedComponents(boolean removeCollapsed)` Sets whether the reduction will result in collapsed components being removed completely, or simply being collapsed to an (invalid) Geometry of the same type.

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

Constructor Detail

### GeometryPrecisionReducer

    public GeometryPrecisionReducer(PrecisionModel pm)

Method Detail

### reduce

    public static Geometry reduce(Geometry g,
                                  PrecisionModel precModel)

  Convenience method for doing precision reduction on a single geometry, with collapses removed and keeping the geometry precision model the same, and preserving polygonal topology.

  Parameters:
    `g` - the geometry to reduce
    `precModel` - the precision model to use
  Returns:
    the reduced geometry

### reducePointwise

    public static Geometry reducePointwise(Geometry g,
                                           PrecisionModel precModel)

  Convenience method for doing pointwise precision reduction on a single geometry, with collapses removed and keeping the geometry precision model the same, but NOT preserving valid polygonal topology.

  Parameters:
    `g` - the geometry to reduce
    `precModel` - the precision model to use
  Returns:
    the reduced geometry

### setRemoveCollapsedComponents

    public void setRemoveCollapsedComponents(boolean removeCollapsed)

  Sets whether the reduction will result in collapsed components being removed completely, or simply being collapsed to an (invalid) Geometry of the same type. The default is to remove collapsed components.

  Parameters:
    `removeCollapsed` - if `true` collapsed components will be removed

### setChangePrecisionModel

    public void setChangePrecisionModel(boolean changePrecisionModel)

  Sets whether the `PrecisionModel` of the new reduced Geometry will be changed to be the `PrecisionModel` supplied to specify the precision reduction.

  The default is to not change the precision model

  Parameters:
    `changePrecisionModel` - if `true` the precision model of the created Geometry will be the the precisionModel supplied in the constructor.

### setPointwise

    public void setPointwise(boolean isPointwise)

  Sets whether the precision reduction will be done in pointwise fashion only. Pointwise precision reduction reduces the precision of the individual coordinates only, but does not attempt to recreate valid topology. This is only relevant for geometries containing polygonal components.

  Parameters:
    `isPointwise` - if reduction should be done pointwise only

### reduce

    public Geometry reduce(Geometry geom)

JTS Topology Suite version 1.13