19 #ifndef GEOS_OP_POLYGONIZE_HOLEASSIGNER_H 20 #define GEOS_OP_POLYGONIZE_HOLEASSIGNER_H 22 #include <geos/operation/polygonize/EdgeRing.h> 23 #include <geos/index/strtree/TemplateSTRtree.h> 29 namespace polygonize {
45 static void assignHolesToShells(std::vector<EdgeRing*> & holes, std::vector<EdgeRing*> & shells);
48 explicit HoleAssigner(std::vector<EdgeRing*> & shells) : m_shells(shells) {
52 void assignHolesToShells(std::vector<EdgeRing*> & holes);
53 void assignHoleToShell(
EdgeRing* holeER);
60 std::vector<EdgeRing*>& m_shells;
61 geos::index::strtree::TemplateSTRtree<EdgeRing*> m_shellIndex;
An Envelope defines a rectangulare region of the 2D coordinate plane.
Definition: Envelope.h:58
Assigns hole rings to shell rings during polygonization.
Definition: HoleAssigner.h:38
Represents a ring of PolygonizeDirectedEdge which form a ring of a polygon. The ring may be either an...
Definition: operation/polygonize/EdgeRing.h:61
Basic namespace for all GEOS functionalities.
Definition: Angle.h:26