GEOS
3.13.0dev

Geometry classes support the concept of applying a coordinate filter to every coordinate in the Geometry. More...
#include <CoordinateFilter.h>
Public Member Functions  
virtual bool  isDone () const 
virtual void  filter_rw (CoordinateXY *) const 
Performs an operation on coord . More...  
virtual void  filter_ro (const CoordinateXY *) 
Performs an operation with coord . More...  
virtual void  filter_rw (Coordinate *c) const 
virtual void  filter_ro (const Coordinate *c) 
virtual void  filter_rw (CoordinateXYM *c) const 
virtual void  filter_ro (const CoordinateXYM *c) 
virtual void  filter_rw (CoordinateXYZM *c) const 
virtual void  filter_ro (const CoordinateXYZM *c) 
Geometry classes support the concept of applying a coordinate filter to every coordinate in the Geometry.
A coordinate filter can either record information about each coordinate or change the coordinate in some way. Coordinate filters implement the interface CoordinateFilter
. (CoordinateFilter
is an example of the GangofFour Visitor pattern). Coordinate filters can be used to implement such things as coordinate transformations, centroid and envelope computation, and many other functions.
A CoordinateFilter should be able to process a CoordinateXY object and can optionally provide specialized implementations for higherdimensionality Coordinates. If the behavior can be templated on coordinate type, then a filter may inherit from CoordinateInspector or CoordinateMutator to generate these implementations from a template.

inlinevirtual 
Performs an operation with coord
.
param coord
a Coordinate to which the filter is applied.

inlinevirtual 
Performs an operation on coord
.
param coord
a Coordinate to which the filter is applied.