96 template <
typename POLYGONTREETYPE>
99 for (
auto it0 = list_of_simple_polygon_hierarchies.begin();
100 it0 != list_of_simple_polygon_hierarchies.end();
103 auto it1 = list_of_simple_polygon_hierarchies.begin();
104 while (it1 != list_of_simple_polygon_hierarchies.end()) {
108 if (it1 == list_of_simple_polygon_hierarchies.end())
113 if ((*it0)->isPolygonInside(*it1)) {
114 (*it0)->insertSimplePolygonTree(*it1);
115 it1 = list_of_simple_polygon_hierarchies.erase(it1);
Definition of the Polygon class.
This class computes and stores the topological relations between polygons. Every node of the SimplePo...
decltype(_children) ::iterator end()
std::list< SimplePolygonTree * > _children
bool isPolygonInside(const SimplePolygonTree *polygon_hierarchy) const
SimplePolygonTree(Polygon *polygon, SimplePolygonTree *parent)
const SimplePolygonTree * parent() const
void insertSimplePolygonTree(SimplePolygonTree *polygon_hierarchy)
std::size_t getNumberOfChildren() const
decltype(_children) ::iterator begin()
Polygon const & polygon() const
SimplePolygonTree * _parent
virtual ~SimplePolygonTree()
void createPolygonTrees(std::list< POLYGONTREETYPE * > &list_of_simple_polygon_hierarchies)