geos::precision::PrecisionReducerTransformer Class Reference

Reduces the precision of a `geom::Geometry` according to the supplied `geom::PrecisionModel`, without attempting to preserve valid topology. More...

`#include <PrecisionReducerTransformer.h>`

Inheritance diagram for geos::precision::PrecisionReducerTransformer:

## Public Member Functions

| PrecisionReducerTransformer (const geom::PrecisionModel &p_targetPM, bool p_isRemoveCollapsed=false)
Public Member Functions inherited from geos::geom::util::GeometryTransformer
std::unique_ptr< Geometry > | transform (const Geometry *nInputGeom)
void | setSkipTransformedInvalidInteriorRings (bool b)

## Static Public Member Functions

static std::unique_ptr< geom::Geometry > | reduce (const geom::Geometry &geom, const geom::PrecisionModel &targetPM, bool isRemoveCollapsed=false)

## Protected Member Functions

std::unique_ptr< geom::CoordinateSequence > | transformCoordinates (const geom::CoordinateSequence *coords, const geom::Geometry *parent) override
std::unique_ptr< geom::Geometry > | transformPolygon (const geom::Polygon *geom, const geom::Geometry *parent) override
std::unique_ptr< geom::Geometry > | transformMultiPolygon (const geom::MultiPolygon *geom, const geom::Geometry *parent) override
Protected Member Functions inherited from geos::geom::util::GeometryTransformer
virtual Geometry::Ptr | transformPoint (const Point *geom, const Geometry *parent)
virtual Geometry::Ptr | transformMultiPoint (const MultiPoint *geom, const Geometry *parent)
virtual Geometry::Ptr | transformLinearRing (const LinearRing *geom, const Geometry *parent)
virtual Geometry::Ptr | transformLineString (const LineString *geom, const Geometry *parent)
virtual Geometry::Ptr | transformMultiLineString (const MultiLineString *geom, const Geometry *parent)
virtual Geometry::Ptr | transformGeometryCollection (const GeometryCollection *geom, const Geometry *parent)

## Additional Inherited Members

Protected Attributes inherited from geos::geom::util::GeometryTransformer
const GeometryFactory * | factory

## Detailed Description

Reduces the precision of a `geom::Geometry` according to the supplied `geom::PrecisionModel`, without attempting to preserve valid topology.

The topology of the resulting geometry may be invalid if topological collapse occurs due to coordinates being shifted. It is up to the client to check this and handle it if necessary. Collapses may not matter for some uses. An example is simplifying the input to the buffer algorithm. The buffer algorithm does not depend on the validity of the input geometry.

## Member Function Documentation

## transformCoordinates()

std::unique_ptr< geom::CoordinateSequence > geos::precision::PrecisionReducerTransformer::transformCoordinates | ( | const geom::CoordinateSequence * | coords,
|  | const geom::Geometry * | parent )

override protected virtual

Reimplemented from geos::geom::util::GeometryTransformer.

## transformMultiPolygon()

std::unique_ptr< geom::Geometry > geos::precision::PrecisionReducerTransformer::transformMultiPolygon | ( | const geom::MultiPolygon * | geom,
|  | const geom::Geometry * | parent )

override protected virtual

Reimplemented from geos::geom::util::GeometryTransformer.

## transformPolygon()

std::unique_ptr< geom::Geometry > geos::precision::PrecisionReducerTransformer::transformPolygon | ( | const geom::Polygon * | geom,
|  | const geom::Geometry * | parent )

override protected virtual

Reimplemented from geos::geom::util::GeometryTransformer.

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

- PrecisionReducerTransformer.h