CGAL 5.1.3 - 2D Arrangements
CGAL::Arr_polycurve_traits_2< SubcurveTraits_2 >::Construct_curve_2 Class Reference

#include <CGAL/Arr_polycurve_traits_2.h>

Definition

Construction functor of a general (not necessarily \(x\)-monotone) polycurve.

This functor constructs general polycurve. Its operator() is oveloaded to support various input types.

Note that the composing subcurves, depending on the SubcurveTraits_2, might not be \(x\)-monotone.

Operations

Curve_2 operator() (const Subcurve_2 &subcurve) const
 Obtain a polycurve that comprises of one given subcurve. More...
 
template<typename ForwardIterator >
Curve_2 operator() (ForwardIterator begin, ForwardIterator end) const
 Construct a well-oriented polycurve from a range of either SubcurveTraits_2::Point_2 or SubcurveTraits_2::Curve_2. More...
 

Member Function Documentation

◆ operator()() [1/2]

template<typename SubcurveTraits_2>
Curve_2 CGAL::Arr_polycurve_traits_2< SubcurveTraits_2 >::Construct_curve_2::operator() ( const Subcurve_2 subcurve) const

Obtain a polycurve that comprises of one given subcurve.

Parameters
subcurveinput subcurve.
Precondition
subcurve is not degenerated (not tested).
Returns
A polycurve with one subcurve, namely subcurve.

◆ operator()() [2/2]

template<typename SubcurveTraits_2>
template<typename ForwardIterator >
Curve_2 CGAL::Arr_polycurve_traits_2< SubcurveTraits_2 >::Construct_curve_2::operator() ( ForwardIterator  begin,
ForwardIterator  end 
) const

Construct a well-oriented polycurve from a range of either SubcurveTraits_2::Point_2 or SubcurveTraits_2::Curve_2.

Parameters
beginiterator pointing to the first element in the range.
enditerator pointing to the past-the-end element in the range.
Precondition
The given range form a continuous and well-oriented polycurve (not tested).
Contains no degenerated subcurves (not tested)
Returns
A polycurve using the corresponding construction implementation.