20 #ifndef GEOS_OP_CONSISTENTAREATESTER_H
21 #define GEOS_OP_CONSISTENTAREATESTER_H
23 #include <geos/export.h>
25 #include <geos/geom/Coordinate.h>
26 #include <geos/algorithm/LineIntersector.h>
27 #include <geos/operation/relate/RelateNodeGraph.h>
32 class LineIntersector;
39 class RelateNodeGraph;
69 class GEOS_DLL ConsistentAreaTester {
72 algorithm::LineIntersector li;
75 geomgraph::GeometryGraph* geomGraph;
77 relate::RelateNodeGraph nodeGraph;
80 geom::Coordinate invalidPoint;
86 bool isNodeEdgeAreaLabelsConsistent();
96 ConsistentAreaTester(geomgraph::GeometryGraph* newGeomGraph);
98 ~ConsistentAreaTester() =
default;
104 geom::Coordinate& getInvalidPoint();
113 bool isNodeConsistentArea();
130 bool hasDuplicateRings();
139 #endif // GEOS_OP_CONSISTENTAREATESTER_H