\( \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.11.3 - 2D Minkowski Sums
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
PolygonConvexDecomposition_2 Concept Reference

Definition

A model of the PolygonConvexDecomposition_2 concept is capable of decomposing an input polygon \( P\) into a set of convex sub-polygons \( P_1, \ldots, P_k\), such that \( \cup_{i=1}^{k}{P_k} = P\).

Has Models:

CGAL::Small_side_angle_bisector_decomposition_2<Kernel,Container>

CGAL::Optimal_convex_decomposition_2<Kernel,Container>

CGAL::Hertel_Mehlhorn_convex_decomposition_2<Kernel,Container>

CGAL::Greene_convex_decomposition_2<Kernel,Container>

CGAL::Polygon_nop_decomposition_2<Kernel,Container>

Types

typedef unspecified_type Kernel
 the geometric kernel type. More...
 
typedef unspecified_type Container
 the container of points type. More...
 
typedef unspecified_type Point_2
 the point type, used to represent polygon vertices. More...
 
typedef unspecified_type Polygon_2
 the polygon type, defined as Polygon_2<Kernel,Container>. More...
 

Creation

 PolygonConvexDecomposition_2 ()
 default constructor. More...
 

Operations

template<class OutputIterator >
OutputIterator operator() (const Polygon_2 &P, OutputIterator oi) const
 decomposes the input polygon P into convex sub-polygons, and writes them to the output iterator oi. More...
 

Member Typedef Documentation

the container of points type.

By default it is std::vector<typename Kernel::Point_2>.

the geometric kernel type.

the point type, used to represent polygon vertices.

the polygon type, defined as Polygon_2<Kernel,Container>.

Constructor & Destructor Documentation

PolygonConvexDecomposition_2::PolygonConvexDecomposition_2 ( )

default constructor.

Member Function Documentation

template<class OutputIterator >
OutputIterator PolygonConvexDecomposition_2::operator() ( const Polygon_2 P,
OutputIterator  oi 
) const

decomposes the input polygon P into convex sub-polygons, and writes them to the output iterator oi.

The value-type of the output iterator must be Polygon_2. The function returns a past-the-end iterator for the convex sub-polygons.