\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)
CGAL 5.0 - 2D Arrangements
CGAL::Arr_Bezier_curve_traits_2< RatKernel, AlgKernel, NtTraits >::X_monotone_curve_2 Class Reference

#include <CGAL/Arr_Bezier_curve_traits_2.h>


The X_monotone_curve_2 class nested within the Bézier traits is used to represent \( x\)-monotone subcurves of Bézier curves.

The subcurve is defined by a supporting Bézier curve \( B(t)\) and a range of definition in the parameter space \( [t_1, t_2] \subseteq [0, 1]\), where \( B(t_1)\) is the subcurve source and \( B(t_2)\) is its target. Note that as the point endpoints may only be approximated, the parameter range defining the subcurve may only be approximately known.

It is not possible to construct \( x\)-monotone subcurves directly. Instead, use the Make_x_monotone_2 functor supplied by the traits class to subdivide a Curve_2 object into \( x\)-monotone subcurves.

Access Functions

Curve_2 supporting_curve () const
 returns the supporting Bézier curve of b.
Point_2 source () const
 returns the source point of b.
Point_2 target () const
 returns the target point of b.
Point_2 left () const
 returns the left ( \( xy\)-lexicographically smaller) endpoint of b.
Point_2 right () const
 returns the right ( \( xy\)-lexicographically smaller) endpoint of b.
std::pair< double, double > parameter_range () const
 return the approximate parameter range defining the subcurve b.