\( \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.13 - 2D Minkowski Sums
CGAL::Optimal_convex_decomposition_2< Kernel, Container > Class Template Reference

#include <CGAL/Polygon_convex_decomposition_2.h>


The Optimal_convex_decomposition_2 class provides an implementation of Greene's dynamic programming algorithm for optimal decomposition of a polygon into convex sub-polygons [6].

Note that this algorithm requires \( O(n^4)\) time and \( O(n^3)\) space in the worst case, where \( n\) is the size of the input polygon.

Template Parameters
Kernelmust be a geometric kernel that can be used for the polygon.
Containermust be a container that can be used for the polygon. It is by default std::vector<typename Kernel::Point_2>.
Is Model Of:
See also

Public Types

typedef CGAL::Polygon_2< Kernel, Container > Polygon_2