CGAL 5.0 - 2D Arrangements
CGAL::Arr_rational_function_traits_2< AlgebraicKernel_d_1 >::Construct_curve_2 Class Reference

#include <CGAL/Arr_rational_function_traits_2.h>

## Definition

Functor to construct a Curve_2.

To enable caching the class is not default constructible and must be obtained via the function construct_curve_2_object(), which is a member of the traits.

Is Model Of:

Assignable

CopyConstructible

AdaptableBinaryFunction

AdaptableUnaryFunction

## Types

typedef AlgebraicKernel_d_1::Polynomial_1 Polynomial_1

typedef AlgebraicKernel_d_1::Algebraic_real_1 Algebraic_real_1

typedef Arr_rational_function_traits_2< AlgebraicKernel_d_1 >::Curve_2 result_type

typedef Polynomial_1 argument_type

typedef Polynomial_1 first_argument_type

typedef Polynomial_1 second_argument_type

## Operations

Curve_2 operator() (Polynomial_1 P) const
Constructs a curve representing the polynomial function $$y = P(x)$$.

Curve_2 operator() (Polynomial_1 P, const Algebraic_real_1 &x, bool right) const
Constructs a curve representing the polynomial function $$y = P(x)$$. More...

Curve_2 operator() (Polynomial_1 P, const Algebraic_real_1 &lower, const Algebraic_real_1 &upper) const
Constructs a curve representing the polynomial function $$y = P(x)$$. More...

Curve_2 operator() (Polynomial_1 P, Polynomial_1 Q) const
Constructs a curve representing the rational function $$y = P(x)/Q(x)$$.

Curve_2 operator() (Polynomial_1 P, Polynomial_1 Q, const Algebraic_real_1 &x, bool right) const
Constructs a curve representing the rational function $$y = P(x)/Q(x)$$. More...

Curve_2 operator() (Polynomial_1 P, Polynomial_1 Q, const Algebraic_real_1 &lower, const Algebraic_real_1 &upper) const
Constructs a curve representing the rational function $$y = P(x)/Q(x)$$. More...

template<typename InputIterator >
Curve_2 operator() (InputIterator begin, InputIterator end) const
Constructs a curve representing the polynomial function $$y = P(x)$$, where the coefficients of $$P$$ are given in the range [begin,end).

template<typename InputIterator >
Curve_2 operator() (InputIterator begin, InputIterator end, const Algebraic_real_1 &x, bool right) const
Constructs a curve representing the polynomial function $$y = P(x)$$, where the coefficients of $$P$$ are given in the range [begin,end). More...

template<typename InputIterator >
Curve_2 operator() (InputIterator begin, InputIterator end, const Algebraic_real_1 &lower, const Algebraic_real_1 &upper) const
Constructs a curve representing the polynomial function $$y = P(x)$$, where the coefficients of $$P$$ are given in the range [begin,end). More...

template<typename InputIterator >
Curve_2 operator() (InputIterator begin_numer, InputIterator end_numer, InputIterator begin_denom, InputIterator end_denom) const
Constructs a curve representing the rational function $$y = P(x)/Q(x)$$, where the coefficients of $$P$$ and $$Q$$ are given in the ranges [begin_numer,end_numer) and [begin_denom,end_denom), respectively.

template<typename InputIterator >
Curve_2 operator() (InputIterator begin_numer, InputIterator end_numer, InputIterator begin_denom, InputIterator end_denom, const Algebraic_real_1 &x, bool right) const
Constructs a curve representing the rational function $$y = P(x)/Q(x)$$, where the coefficients of $$P$$ and $$Q$$ are given in the ranges [begin_numer,end_numer) and [begin_denom,end_denom), respectively. More...

template<typename InputIterator >
Curve_2 operator() (InputIterator begin_numer, InputIterator end_numer, InputIterator begin_denom, InputIterator end_denom, const Algebraic_real_1 &lower, const Algebraic_real_1 &upper) const
Constructs a curve representing the rational function $$y = P(x)/Q(x)$$, where the coefficients of $$P$$ and $$Q$$ are given in the ranges [begin_numer,end_numer) and [begin_denom,end_denom), respectively. More...

## ◆ operator()() [1/8]

template<typename AlgebraicKernel_d_1 >
 Curve_2 CGAL::Arr_rational_function_traits_2< AlgebraicKernel_d_1 >::Construct_curve_2::operator() ( Polynomial_1 P, const Algebraic_real_1 & x, bool right ) const

Constructs a curve representing the polynomial function $$y = P(x)$$.

The function is defined over the interval $$[x,+\infty)$$ if $$right$$ is true and $$(-\infty,x]$$ otherwise.

## ◆ operator()() [2/8]

template<typename AlgebraicKernel_d_1 >
 Curve_2 CGAL::Arr_rational_function_traits_2< AlgebraicKernel_d_1 >::Construct_curve_2::operator() ( Polynomial_1 P, const Algebraic_real_1 & lower, const Algebraic_real_1 & upper ) const

Constructs a curve representing the polynomial function $$y = P(x)$$.

The function is defined over the interval $$[lower,upper]$$.

## ◆ operator()() [3/8]

template<typename AlgebraicKernel_d_1 >
 Curve_2 CGAL::Arr_rational_function_traits_2< AlgebraicKernel_d_1 >::Construct_curve_2::operator() ( Polynomial_1 P, Polynomial_1 Q, const Algebraic_real_1 & x, bool right ) const

Constructs a curve representing the rational function $$y = P(x)/Q(x)$$.

The function is defined over the interval $$I=[x,+\infty)$$ if $$right$$ is true and $$I=(-\infty,x]$$ otherwise.

## ◆ operator()() [4/8]

template<typename AlgebraicKernel_d_1 >
 Curve_2 CGAL::Arr_rational_function_traits_2< AlgebraicKernel_d_1 >::Construct_curve_2::operator() ( Polynomial_1 P, Polynomial_1 Q, const Algebraic_real_1 & lower, const Algebraic_real_1 & upper ) const

Constructs a curve representing the rational function $$y = P(x)/Q(x)$$.

The function is defined over the interval $$I=[lower,upper]$$.

## ◆ operator()() [5/8]

template<typename AlgebraicKernel_d_1 >
template<typename InputIterator >
 Curve_2 CGAL::Arr_rational_function_traits_2< AlgebraicKernel_d_1 >::Construct_curve_2::operator() ( InputIterator begin, InputIterator end, const Algebraic_real_1 & x, bool right ) const

Constructs a curve representing the polynomial function $$y = P(x)$$, where the coefficients of $$P$$ are given in the range [begin,end).

The function is defined over the interval $$[x,+\infty)$$ if $$right$$ is true and $$(-\infty,x]$$ otherwise.

## ◆ operator()() [6/8]

template<typename AlgebraicKernel_d_1 >
template<typename InputIterator >
 Curve_2 CGAL::Arr_rational_function_traits_2< AlgebraicKernel_d_1 >::Construct_curve_2::operator() ( InputIterator begin, InputIterator end, const Algebraic_real_1 & lower, const Algebraic_real_1 & upper ) const

Constructs a curve representing the polynomial function $$y = P(x)$$, where the coefficients of $$P$$ are given in the range [begin,end).

The function is defined over the interval $$[lower,upper]$$.

## ◆ operator()() [7/8]

template<typename AlgebraicKernel_d_1 >
template<typename InputIterator >
 Curve_2 CGAL::Arr_rational_function_traits_2< AlgebraicKernel_d_1 >::Construct_curve_2::operator() ( InputIterator begin_numer, InputIterator end_numer, InputIterator begin_denom, InputIterator end_denom, const Algebraic_real_1 & x, bool right ) const

Constructs a curve representing the rational function $$y = P(x)/Q(x)$$, where the coefficients of $$P$$ and $$Q$$ are given in the ranges [begin_numer,end_numer) and [begin_denom,end_denom), respectively.

The function is defined over the interval $$I=[x,+\infty)$$ if $$right$$ is true and $$I=(-\infty,x]$$ otherwise.

## ◆ operator()() [8/8]

template<typename AlgebraicKernel_d_1 >
template<typename InputIterator >
 Curve_2 CGAL::Arr_rational_function_traits_2< AlgebraicKernel_d_1 >::Construct_curve_2::operator() ( InputIterator begin_numer, InputIterator end_numer, InputIterator begin_denom, InputIterator end_denom, const Algebraic_real_1 & lower, const Algebraic_real_1 & upper ) const

Constructs a curve representing the rational function $$y = P(x)/Q(x)$$, where the coefficients of $$P$$ and $$Q$$ are given in the ranges [begin_numer,end_numer) and [begin_denom,end_denom), respectively.

The function is defined over the interval $$I=[lower,upper]$$.