CGAL 4.11 - 2D Generalized Barycentric Coordinates
BarycentricCoordinates_2 Concept Reference

## Definition

Requirements of the template parameter Coordinate_2 for the class CGAL::Barycentric_coordinates::Generalized_barycentric_coordinates_2.

Has Models:

CGAL::Barycentric_coordinates::Wachspress_2

CGAL::Barycentric_coordinates::Mean_value_2

CGAL::Barycentric_coordinates::Discrete_harmonic_2

## Creation

BarycentricCoordinates_2 (const std::vector< Traits::Point_2 > &vertices, const Traits &barycentric_traits)
Creates a class that implements generalized barycentric coordinates for any query point that does not belong to the polygon's boundary. More...

## Functions

boost::optional< OutputIteratorweights (const Traits::Point_2 &query_point, OutputIterator &output)
A function that computes generalized barycentric coordinates without normalization that are called generalized baycentric weights (as fast as possible algorithm is used). More...

boost::optional< OutputIteratorcoordinates_on_bounded_side (const Traits::Point_2 &query_point, OutputIterator &output, const Type_of_algorithm type_of_algorithm)
A function that computes generalized barycentric coordinates on the bounded side of a polygon with one of two possible algorithms: one is precise and one is fast. More...

boost::optional< OutputIteratorcoordinates_on_unbounded_side (const Traits::Point_2 &query_point, OutputIterator &output, const Type_of_algorithm type_of_algorithm)
A function that computes generalized barycentric coordinates on the unbounded side of a polygon with one of two possible algorithms: one is precise and one is fast. More...

## Constructor & Destructor Documentation

 BarycentricCoordinates_2::BarycentricCoordinates_2 ( const std::vector< Traits::Point_2 > & vertices, const Traits & barycentric_traits )

Creates a class that implements generalized barycentric coordinates for any query point that does not belong to the polygon's boundary.

The polygon is given by a range of vertices of the type Traits::Point_2 stored in a container of the type std::vector.

## Member Function Documentation

 boost::optional BarycentricCoordinates_2::coordinates_on_bounded_side ( const Traits::Point_2 & query_point, OutputIterator & output, const Type_of_algorithm type_of_algorithm )

A function that computes generalized barycentric coordinates on the bounded side of a polygon with one of two possible algorithms: one is precise and one is fast.

The algorithm type is specified by the parameter type_of_algorithm. Coordinates are computed with respect to a query point of the type Traits::Point_2 and stored in the output iterator output. The function returns a pointer to the last stored element.

 boost::optional BarycentricCoordinates_2::coordinates_on_unbounded_side ( const Traits::Point_2 & query_point, OutputIterator & output, const Type_of_algorithm type_of_algorithm )

A function that computes generalized barycentric coordinates on the unbounded side of a polygon with one of two possible algorithms: one is precise and one is fast.

The algorithm type is specified by the parameter type_of_algorithm. Coordinates are computed with respect to a query point of the type Traits::Point_2 and stored in the output iterator output. The function returns a pointer to the last stored element.

 boost::optional BarycentricCoordinates_2::weights ( const Traits::Point_2 & query_point, OutputIterator & output )

A function that computes generalized barycentric coordinates without normalization that are called generalized baycentric weights (as fast as possible algorithm is used).

Weights are computed with respect to a query point of the type Traits::Point_2 and stored in the output iterator output. The function returns a pointer to the last stored element.