CGAL 5.3  2D Arrangements

#include <CGAL/Arr_consolidated_curve_data_traits_2.h>
The class Arr_consolidated_curve_data_traits_2
is a model of the concept ArrangementTraits_2
, and serves as a decorator class that enables the extension of the curve type defined by the Traits
parameter.
The traits class inherits its point type from Traits::Point_2
, and defines the types Curve_2
and X_monotone_curve_2
extended with extraneous data fields of type Data
.
Each Curve_2
object is associated with a single data field of type Data
, and each X_monotone_curve_2
object is associated with a set of unique data objects. When a curve is subdivided into \( x\)monotone subcurves, all resulting subcurves are associated with a list containing a single data object, copied from the inducing curve. When an \( x\)monotone curve is split, its data set is duplicated, and inserted into the sets of both resulting subcurves. In case two (or more) \( x\)monotone curves overlap, their data sets are consolidated, and are inserted into the set of the \( x\)monotone curve that represents the overlap.
Classes  
class  Data_container 
The Data_container class nested within the consolidated curvedata traits and associated with the Traits::X_monotone_curve_2 type is maintained as a list with unique data objects. More...  
Types  
typedef Traits  Base_traits_2 
the base traitsclass.  
typedef Base_traits_2::Curve_2  Base_curve_2 
the base curve.  
typedef Base_traits_2::X_monotone_curve_2  Base_x_monotone_curve_2 
the base \( x\)monotone curve curve.  
typedef unspecified_type typedef  Data_container 
a set of data objects that is associated with an \( x\)monotone curve.  
typedef unspecified_type typedef  Data_iterator 
a nonmutable iterator for the data objects in the data container.  