\( \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.7 - 2D Arrangements
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
CGAL::Arr_polycurve_traits_2< GeometryTraits_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 segments, depending on the GeometryTraits_2, might not be \(x\)-monotone.

Operations

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

Member Function Documentation

template<typename GeometryTraits_2 >
Curve_2 CGAL::Arr_polycurve_traits_2< GeometryTraits_2 >::Construct_curve_2::operator() ( const Segment_2 seg) const

Obtain a polycurve that comprises of one given segment.

Parameters
seginput segment
Precondition
seg is not degenerated (not tested)
Returns
A polycurve with one segment, namely seg.
template<typename GeometryTraits_2 >
template<typename ForwardIterator >
Curve_2 CGAL::Arr_polycurve_traits_2< GeometryTraits_2 >::Construct_curve_2::operator() ( ForwardIterator  begin,
ForwardIterator  end 
) const

Construct a well-oriented polycurve from a range of either GeometryTraits_2::Point_2 or GeometryTraits_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 segments (not tested)
Returns
A polycurve using the corresponding construction implementation.