\( \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.8 - 2D Minkowski Sums

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
PolygonConvexDecomposition_2 Concept Reference
Concepts

## 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>`

## 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

typedef unspecified_type PolygonConvexDecomposition_2::Container

the container of points type.

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

typedef unspecified_type PolygonConvexDecomposition_2::Kernel

the geometric kernel type.

typedef unspecified_type PolygonConvexDecomposition_2::Point_2

the point type, used to represent polygon vertices.

typedef unspecified_type PolygonConvexDecomposition_2::Polygon_2

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.