CGAL 5.6 - 2D Polygons
|
A model of this concept represents a general polygon with holes. The concept requires the ability to access the general polygon that represents the outer boundary and the general polygons that represent the holes.
Types | |
typedef unspecified_type | Polygon_2 |
the polygon type used to represent the outer boundary and each hole. | |
typedef unspecified_type | Hole_const_iterator |
a bidirectional iterator over the polygonal holes. | |
typedef unspecified_type | Holes_container |
range type for iterating over holes. | |
Creation | |
template<typename InputIterator > | |
GeneralPolygonWithHoles_2 (Polygon_2 &outer, InputIterator begin, InputIterator end) | |
constructs a general polygon with holes using a given general polygon outer as the outer boundary and a given range of holes. | |
Access Functions | |
const Polygon_2 & | outer_boundary () const |
returns the general polygon that represents the outer boundary. | |
Hole_const_iterator | holes_begin () const |
returns the begin iterator of the holes. | |
Hole_const_iterator | holes_end () const |
returns the past-the-end iterator of the holes. | |
const Holes_container & | holes () const |
returns the range of holes. | |
Modifiers | |
void | add_hole (const Polygon_2 &hole) |
adds a given polygon as a hole. | |
void | erase_hole (Hole_iterator hit) |
erases the specified hole. | |
void | clear_outer_boundary () |
clears the output boundary. | |
void | clear_holes () |
removes all the holes. | |
void | clear () |
removes the outer boundary and all holes. | |
a bidirectional iterator over the polygonal holes.
Its value type is Polygon_2
.
GeneralPolygonWithHoles_2::GeneralPolygonWithHoles_2 | ( | Polygon_2 & | outer, |
InputIterator | begin, | ||
InputIterator | end | ||
) |
constructs a general polygon with holes using a given general polygon outer
as the outer boundary and a given range of holes.
If outer
is an empty general polygon, then an unbounded polygon with holes will be created. The holes must be contained inside the outer boundary, and the polygons representing the holes must be simple and pairwise disjoint, except perhaps at the vertices.
void GeneralPolygonWithHoles_2::add_hole | ( | const Polygon_2 & | hole | ) |
adds a given polygon as a hole.
const Polygon_2 & GeneralPolygonWithHoles_2::outer_boundary | ( | ) | const |
returns the general polygon that represents the outer boundary.
Note that this polygon is not necessarily a valid (simple) general polygon because it may be relatively simple.