CGAL 5.4.5 - Weights
|
#include <CGAL/Weights/wachspress_weights.h>
2D Wachspress weights for polygons.
This class implements 2D Wachspress weights ( [2], [5], [7] ) which can be computed at any point inside a strictly convex polygon.
Wachspress weights are well-defined and non-negative inside a strictly convex polygon. The weights are computed analytically using the formulation from the wachspress_weight()
.
VertexRange | a model of ConstRange whose iterator type is RandomAccessIterator |
GeomTraits | a model of AnalyticWeightTraits_2 |
PointMap | a model of ReadablePropertyMap whose key type is VertexRange::value_type and value type is Point_2 . The default is CGAL::Identity_property_map . |
Types | |
typedef GeomTraits::FT | FT |
Number type. | |
typedef GeomTraits::Point_2 | Point_2 |
Point type. | |
Initialization | |
Wachspress_weights_2 (const VertexRange &polygon, const GeomTraits traits=GeomTraits(), const PointMap point_map=PointMap()) | |
initializes all internal data structures. More... | |
Access | |
template<typename OutIterator > | |
OutIterator | operator() (const Point_2 &query, OutIterator w_begin) |
computes 2D Wachspress weights. More... | |
CGAL::Weights::Wachspress_weights_2< VertexRange, GeomTraits, PointMap >::Wachspress_weights_2 | ( | const VertexRange & | polygon, |
const GeomTraits | traits = GeomTraits() , |
||
const PointMap | point_map = PointMap() |
||
) |
initializes all internal data structures.
This class implements the behavior of Wachspress weights for 2D query points inside strictly convex polygons.
polygon | an instance of VertexRange with the vertices of a strictly convex polygon |
traits | a traits class with geometric objects, predicates, and constructions; the default initialization is provided |
point_map | an instance of PointMap that maps a vertex from polygon to Point_2 ; the default initialization is provided |
polygon.size() >= 3
polygon
is simple polygon
is strictly convex OutIterator CGAL::Weights::Wachspress_weights_2< VertexRange, GeomTraits, PointMap >::operator() | ( | const Point_2 & | query, |
OutIterator | w_begin | ||
) |
computes 2D Wachspress weights.
This function fills a destination range with 2D Wachspress weights computed at the query
point with respect to the vertices of the input polygon.
The number of computed weights is equal to the number of polygon vertices.
OutIterator | a model of OutputIterator whose value type is FT |
query | a query point |
w_begin | the beginning of the destination range with the computed weights |