CGAL 5.6.1 - 2D Arrangements
CGAL::Arr_polycurve_traits_2< SubcurveTraits_2 >::X_monotone_curve_2< SubcurveType_2, PointType_2 > Class Template Reference

#include <CGAL/Arr_polycurve_traits_2.h>


The X_monotone_curve_2 class nested within the polycurve traits is used to represent \( x\)-monotone piecewise linear subcurves.

It inherits from the Curve_2 type. X_monotone_curve_2 can be constructed just like Curve_2. However, there is precondition (which is not tested) that the input defines an \( x\)-monotone polycurve. Furthermore, in contrast to the general Curve_2 type, in this case, the subcurves that an X_monotone_curve_2 comprises have to be instances of the type SubcurveTraits_2::X_monotone_curve_2. Note that the \( x\)-monotonicity ensures that an \( x\)-monotone polycurve is not self-intersecting. (A self-intersecting polycurve is subdivided into several interior-disjoint \(x\)-monotone subcurves).

The defined \( x\)-monotone polycurve can be directed either from right-to-left (and in turn its vertices are stored in an ascending lexicographical \( xy\)-order) or left-to-right (and in this case the vertices are stored in a descending lexicographical \( xy\)-order).