GEOS  3.9.1dev
Public Member Functions | Private Member Functions | Private Attributes | List of all members
geos::precision::CommonBitsRemover Class Reference

Allow computing and removing common mantissa bits from one or more Geometries. More...

#include <CommonBitsRemover.h>

Collaboration diagram for geos::precision::CommonBitsRemover:
[legend]

Public Member Functions

 CommonBitsRemover ()
 
 ~CommonBitsRemover ()
 
void add (const geom::Geometry *geom)
 
geom::CoordinategetCommonCoordinate ()
 
void removeCommonBits (geom::Geometry *geom)
 Removes the common coordinate bits from a Geometry. The coordinates of the Geometry are changed. More...
 
geom::GeometryaddCommonBits (geom::Geometry *geom)
 Adds the common coordinate bits back into a Geometry. The coordinates of the Geometry are changed. More...
 

Private Member Functions

 CommonBitsRemover (const CommonBitsRemover &)=delete
 
CommonBitsRemoveroperator= (const CommonBitsRemover &)=delete
 

Private Attributes

geom::Coordinate commonCoord
 
CommonCoordinateFilter * ccFilter
 

Detailed Description

Allow computing and removing common mantissa bits from one or more Geometries.

Definition at line 40 of file CommonBitsRemover.h.

Constructor & Destructor Documentation

geos::precision::CommonBitsRemover::CommonBitsRemover ( const CommonBitsRemover )
privatedelete
geos::precision::CommonBitsRemover::CommonBitsRemover ( )
geos::precision::CommonBitsRemover::~CommonBitsRemover ( )

Member Function Documentation

void geos::precision::CommonBitsRemover::add ( const geom::Geometry geom)

Add a geometry to the set of geometries whose common bits are being computed. After this method has executed the common coordinate reflects the common bits of all added geometries.

Parameters
geoma Geometry to test for common bits
geom::Geometry* geos::precision::CommonBitsRemover::addCommonBits ( geom::Geometry geom)

Adds the common coordinate bits back into a Geometry. The coordinates of the Geometry are changed.

Parameters
geomthe Geometry to which to add the common coordinate bits
Returns
the shifted Geometry
geom::Coordinate& geos::precision::CommonBitsRemover::getCommonCoordinate ( )

The common bits of the Coordinates in the supplied Geometries.

CommonBitsRemover& geos::precision::CommonBitsRemover::operator= ( const CommonBitsRemover )
privatedelete
void geos::precision::CommonBitsRemover::removeCommonBits ( geom::Geometry geom)

Removes the common coordinate bits from a Geometry. The coordinates of the Geometry are changed.

Parameters
geomthe Geometry from which to remove the common coordinate bits
Returns
the shifted Geometry

Member Data Documentation

CommonCoordinateFilter* geos::precision::CommonBitsRemover::ccFilter
private

Definition at line 46 of file CommonBitsRemover.h.

geom::Coordinate geos::precision::CommonBitsRemover::commonCoord
private

Definition at line 44 of file CommonBitsRemover.h.


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