|
CGAL 6.0 - 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. |
ExtremalPolygonTraits_2 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. | |
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.