CGAL 4.7 - Polynomial
PolynomialTraits_d::ConstructPolynomial Concept Reference

## Definition

This AdaptableFunctor provides several operators to construct objects of type PolynomialTraits_d::Polynomial_d.

Refines:

AdaptableFunctor

CopyConstructible

DefaultConstructible

Polynomial_d
PolynomialTraits_d

## Types

typedef
PolynomialTraits_d::Polynomial_d
result_type

## Operations

result_type operator() ()
Construct the zero polynomial.

result_type operator() (int i)
Construct the constant polynomial equal to $$i$$.

result_type operator() (PolynomialTraits_d::Innermost_coefficient_type a)
Construct the constant polynomial equal to $$a$$.

result_type operator() (PolynomialTraits_d::Coefficient_type a)
Construct the polynomial equal to $$a$$.

template<class InputIterator >
result_type operator() (InputIterator begin, InputIterator end)

template<class InputIterator >
result_type operator() (InputIterator begin, InputIterator end, bool is_sorted=false)
Constructs a Polynomial_d from a given iterator range of std::pair<CGAL::Exponent_vector, PolynomialTraits_d::Innermost_coefficient_type>. More...

## Member Function Documentation

template<class InputIterator >
 result_type PolynomialTraits_d::ConstructPolynomial::operator() ( InputIterator begin, InputIterator end )
Precondition
The value type of InputIterator is PolynomialTraits_d::Coefficient_type.

The operator constructs the a polynomial from the iterator range, with respect to the outermost variable, $$x_{d-1}$$.

The range starts with the coefficient for $$x_{d-1}^0$$.

In case the range is empty, the zero polynomial is constructed.

template<class InputIterator >
 result_type PolynomialTraits_d::ConstructPolynomial::operator() ( InputIterator begin, InputIterator end, bool is_sorted = false )

Constructs a Polynomial_d from a given iterator range of std::pair<CGAL::Exponent_vector, PolynomialTraits_d::Innermost_coefficient_type>.

The optional parameter is_sorted indicates whether the given iterator range is already sorted.

Precondition
The value type of InputIterator is std::pair<CGAL::Exponent_vector, PolynomialTraits_d::Innermost_coefficient_type>.
Each CGAL::Exponent_vector must have size $$d$$.
All appearing CGAL::Exponent_vectors are different.