CGAL 5.4.1 - 2D Arrangements
|
#include <CGAL/Arrangement_2.h>
CGAL::Arrangement_on_surface_2< Traits, Default_planar_topology< Traits, Dcel >::Traits >.
An object arr
of the class Arrangement_2
represents the planar subdivision induced by a set of \( x\)-monotone curves and isolated points into maximally connected cells. The arrangement is represented as a doubly-connected edge-list (DCEL) such that each DCEL vertex is associated with a point of the plane and each edge is associated with an \( x\)-monotone curve whose interior is disjoint from all other edges and vertices. Recall that an arrangement edge is always comprised of a pair of twin Dcel halfedges.
The Arrangement_2
template has two parameters:
Traits
template-parameter should be instantiated with a model of the ArrangementBasicTraits_2
concept. The traits class defines the types of \( x\)-monotone curves and two-dimensional points, namely ArrangementBasicTraits_2::X_monotone_curve_2
and ArrangementBasicTraits_2::Point_2
, respectively, and supports basic geometric predicates on them. Dcel
template-parameter should be instantiated with a class that is a model of the ArrangementDcel
concept. The value of this parameter is by default Arr_default_dcel<Traits>
. The available traits classes and DCEL classes are described below.
ArrangementDcel
Arr_default_dcel<Traits>
ArrangementBasicTraits_2
CGAL::overlay()
CGAL::is_valid()
Insertion Functions
CGAL::insert()
CGAL::insert_non_intersecting_curve()
CGAL::insert_non_intersecting_curves()
CGAL::insert_point()
Removal functions
Input/output functions
CGAL::IO::read()
CGAL::IO::write()
Types | |
typedef Traits | Geometry_traits |
the geometry traits class. | |
typedef Default_planar_topology< Geometry_traits, Dcel >::Traits | Topology_traits |
The topology traits. | |
typedef Arrangement_on_surface_2< Geometry_traits, Topology_traits > | Base |
The base arrangement on surface type. | |
Creation | |
Arrangement_2 () | |
constructs an empty arrangement containing one unbounded face, which corresponds to the entire plane. | |
Arrangement_2 (const Arrangement_2< Traits, Dcel > &other) | |
copy constructor. More... | |
Arrangement_2 (const Traits *traits) | |
constructs an empty arrangement that uses the given traits instance for performing the geometric predicates. | |
Assignment Methods | |
Arrangement_2< Traits, Dcel > & | operator= (other) |
assignment operator. More... | |
void | assign (const Arrangement_2< Traits, Dcel > &other) |
assigns the contents of another arrangement. More... | |
void | clear () |
clears the arrangement. More... | |
Access Functions | |
Traits * | traits () |
obtains the traits object used by the arrangement instance. More... | |
CGAL::Arrangement_2< Traits, Dcel >::Arrangement_2 | ( | const Arrangement_2< Traits, Dcel > & | other | ) |
copy constructor.
void CGAL::Arrangement_2< Traits, Dcel >::assign | ( | const Arrangement_2< Traits, Dcel > & | other | ) |
assigns the contents of another arrangement.
void CGAL::Arrangement_2< Traits, Dcel >::clear | ( | ) |
clears the arrangement.
Arrangement_2<Traits, Dcel>& CGAL::Arrangement_2< Traits, Dcel >::operator= | ( | other | ) |
assignment operator.
Traits* CGAL::Arrangement_2< Traits, Dcel >::traits | ( | ) |
obtains the traits object used by the arrangement instance.
A const
version is also available.