17#include <geos/export.h>
18#include <geos/geom/Coordinate.h>
73 filter_rw(
static_cast<CoordinateXY*
>(c));
77 filter_ro(
const Coordinate* c)
79 filter_ro(
static_cast<const CoordinateXY*
>(c));
83 filter_rw(CoordinateXYM* c)
const
85 filter_rw(
static_cast<CoordinateXY*
>(c));
89 filter_ro(
const CoordinateXYM* c)
91 filter_ro(
static_cast<const CoordinateXY*
>(c));
95 filter_rw(CoordinateXYZM* c)
const
97 filter_rw(
static_cast<Coordinate*
>(c));
101 filter_ro(
const CoordinateXYZM* c)
103 filter_ro(
static_cast<const Coordinate*
>(c));
107template<
class Derived>
108class CoordinateInspector :
public CoordinateFilter
111 virtual void filter_ro(
const CoordinateXY* c)
override {
static_cast<Derived*
>(
this)->filter(c); }
112 virtual void filter_ro(
const Coordinate* c)
override {
static_cast<Derived*
>(
this)->filter(c); }
113 virtual void filter_ro(
const CoordinateXYM* c)
override {
static_cast<Derived*
>(
this)->filter(c); }
114 virtual void filter_ro(
const CoordinateXYZM* c)
override {
static_cast<Derived*
>(
this)->filter(c); }
117template<
class Derived>
118class CoordinateMutator :
public CoordinateFilter
121 virtual void filter_rw(CoordinateXY* c)
const override {
static_cast<const Derived*
>(
this)->filter(c); }
122 virtual void filter_rw(Coordinate* c)
const override {
static_cast<const Derived*
>(
this)->filter(c); }
123 virtual void filter_rw(CoordinateXYM* c)
const override {
static_cast<const Derived*
>(
this)->filter(c); }
124 virtual void filter_rw(CoordinateXYZM* c)
const override {
static_cast<const Derived*
>(
this)->filter(c); }
Geometry classes support the concept of applying a coordinate filter to every coordinate in the Geome...
Definition CoordinateFilter.h:43
virtual void filter_ro(const CoordinateXY *)
Performs an operation with coord.
Definition CoordinateFilter.h:65
virtual void filter_rw(CoordinateXY *) const
Performs an operation on coord.
Definition CoordinateFilter.h:54
Coordinate is the lightweight class used to store coordinates.
Definition Coordinate.h:216
Basic namespace for all GEOS functionalities.
Definition geos.h:39