19#include <geos/geom/CoordinateSequenceFilter.h>
20#include <geos/geom/Coordinate.h>
21#include <geos/export.h>
33class VertexRingCounter :
public geos::geom::CoordinateSequenceFilter
35 using Coordinate = geos::geom::Coordinate;
36 using CoordinateSequence = geos::geom::CoordinateSequence;
37 using Geometry = geos::geom::Geometry;
41 VertexRingCounter(std::map<Coordinate, std::size_t>& counts)
42 : vertexCounts(counts)
49 bool isDone()
const override {
53 void filter_ro(
const CoordinateSequence& seq, std::size_t i)
override;
56 const std::vector<const Geometry*>& geoms,
57 std::map<Coordinate, std::size_t>& counts);
61 std::map<Coordinate, std::size_t>& vertexCounts;
virtual bool isDone() const =0
Reports whether the application of this filter can be terminated.
virtual bool isGeometryChanged() const =0
Reports whether the execution of this filter has modified the coordinates of the geometry.
The internal representation of a list of coordinates inside a Geometry.
Definition CoordinateSequence.h:56
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition Geometry.h:196
Basic namespace for all GEOS functionalities.
Definition geos.h:38