\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)
CGAL 4.12 - Inscribed Areas
CGAL::Extremal_polygon_perimeter_traits_2< K > Struct Template Reference

#include <CGAL/Extremal_polygon_traits_2.h>

Definition

This is an advanced class.

Advanced

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().

Template Parameters
Kmust be a model of Kernel.
Is Model Of:
ExtremalPolygonTraits_2
See also
CGAL::maximum_area_inscribed_k_gon_2()
CGAL::maximum_perimeter_inscribed_k_gon_2()
CGAL::extremal_polygon_2()
CGAL::Extremal_polygon_area_traits_2<K>
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. 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 ()
 

Member Typedef Documentation

◆ 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.