\( \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.3 - 2D Arrangements
CGAL::Arr_polycurve_traits_2< SubcurveTraits_2 >::Make_x_monotone_2 Class Reference

#include <CGAL/Arr_polycurve_traits_2.h>


Subdivide the given subcurve into x-monotone subcurves and insert them into the given output iterator.

Since the subcurves that constitute a general polycurve are not necessarily \(x\)-monotone, this functor may break them.

Public Member Functions

template<typename OutputIterator >
OutputIterator operator() (const Curve_2 &cv, OutputIterator oi) const

Member Function Documentation

◆ operator()()

template<typename SubcurveTraits_2>
template<typename OutputIterator >
OutputIterator CGAL::Arr_polycurve_traits_2< SubcurveTraits_2 >::Make_x_monotone_2::operator() ( const Curve_2 cv,
OutputIterator  oi 
) const
if cv is not empty then it must be continuous and well-oriented.
cvThe subcurve.
oiThe output iterator, whose value-type is Object. The output object is a wrapper of a X_monotone_curve_2 objects.
The past-the-end iterator.