CGAL 4.12 - Inscribed Areas
|
#include <CGAL/Extremal_polygon_traits_2.h>
This is an advanced class.
The class Extremal_polygon_perimeter_traits_2
provides the types and operations needed to compute a maximum perimeter \( k\)-gon \( P_k\) that can be inscribed into a given convex polygon \( P\) using the function extremal_polygon_2()
.
K | must be a model of Kernel . |
Types | |
typedef unspecified_type | FT |
typedef to K::FT . | |
typedef unspecified_type | Point_2 |
typedef to K::Point_2 . | |
typedef unspecified_type | Less_xy_2 |
typedef to K::Less_xy_2 . | |
typedef unspecified_type | Orientation_2 |
typedef to K::Orientation_2 . | |
typedef unspecified_type | Operation |
AdaptableBinaryFunction class op : Point_2 \( \times\) Point_2 \( \rightarrow\) FT . More... | |
Operations | |
int | min_k () const |
returns 2. | |
FT | init (const Point_2 &p, const Point_2 &q) const |
returns twice the Euclidean distance between p and q . | |
Operation | operation (const Point_2 &p) const |
returns Operation where p is the fixed \( root\) point. | |
template<class RandomAccessIterator , class OutputIterator > | |
OutputIterator | compute_min_k_gon (RandomAccessIterator points_begin, RandomAccessIterator points_end, FT &max_area, OutputIterator o) const |
writes the pair (points_begin[0] , p ) where p is drawn from [points_begin , points_end ) such that the Euclidean distance between both points is maximized (maximum perimeter 2-gon rooted at points_begin[0] ) to o and returns the past-the-end iterator for that sequence (== o + 2 ). | |
Less_xy_2 | less_xy_2_object () |
Orientation_2 | orientation_2_object () |
typedef unspecified_type CGAL::Extremal_polygon_perimeter_traits_2< K >::Operation |
AdaptableBinaryFunction class op
: Point_2
\( \times\) Point_2
\( \rightarrow\) FT
.
For a fixed Point_2
\( root\), op
\( (p,\,q)\) returns \( d(r,\,p) + d(p,\,q) - d(r,\,q)\) where \( d\) denotes the Euclidean distance.