\( \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 4.8 - 2D Arrangements

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
CGAL::Arr_Bezier_curve_traits_2< RatKernel, AlgKernel, NtTraits >::X_monotone_curve_2 Class Reference

`#include <CGAL/Arr_Bezier_curve_traits_2.h>`

## Definition

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`.