\( \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 Regularized Boolean Set-Operations

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

## Definition

Refines:
  `GpsTraitsGeneralPolygon_2`

A model of this concept represents a simple general-polygon. The geometric mapping of the edges of the polygon must be \( x\)-monotone curves. The concept requires the ability to access these curves. The general polygon represented must be simple. That is, the only points of the plane belonging to two curves are the geometric mapping of the polygon vertices. In addition, the vertices of the represented polygon must be ordered consistently, and the curved must be directed accordingly. Only counterclockwise oriented polygons are valid operands of Boolean set-operations. General polygon that represent holes must be clockwise oriented.

Has Models:
  `CGAL::General_polygon_2<ArrTraits>`

## Types
typedef unspecified_type | X_monotone_curve_2
| represents a planar (weakly) \( x\)-monotone curve. More...
typedef unspecified_type | Curve_iterator
| an iterator over the geometric mapping of the polygon edges. More...
typedef unspecified_type | Curve_const_iterator
| a const iterator over the geometric mapping of the polygon edges. More...

## Creation
| GeneralPolygon_2 ()
| default constructor.
| GeneralPolygon_2 (GeneralPolygon_2 other)
| copy constructor.
GeneralPolygon_2 | operator= (other)
| assignment operator.
template<class InputIterator >
| GeneralPolygon_2 (InputIterator begin, InputIterator end)
| constructs a general polygon from a given range of curves.

## Access Functions
Curve_iterator | curves_begin ()
| returns the begin iterator of the curves.
Curve_iterator | curves_end ()
| returns the past-the-end iterator of the curves.
Curve_const_iterator | curves_begin ()
| returns the begin const iterator of the curves.
Curve_const_iterator | curves_end ()
| returns the past-the-end const iterator of the curves.

## Modifiers
template<class Iterator >
void | init (Iterator begin, Iterator end)
| initializes the polygon with the polygonal chain given by the range. More...

## Member Typedef Documentation

typedef unspecified_type GeneralPolygon_2::Curve_const_iterator

a const iterator over the geometric mapping of the polygon edges.

Its value type is `X_monotone_curve_2`.

typedef unspecified_type GeneralPolygon_2::Curve_iterator

an iterator over the geometric mapping of the polygon edges.

Its value type is `X_monotone_curve_2`.

typedef unspecified_type GeneralPolygon_2::X_monotone_curve_2

represents a planar (weakly) \( x\)-monotone curve.

The type of the geometric mapping of the polygonal edges. It must model the concept ArrTraits::XMonotoneCurve_2.

## Member Function Documentation

template<class Iterator >

void GeneralPolygon_2::init | ( | Iterator | begin,
|  | Iterator | end
| ) |  |

initializes the polygon with the polygonal chain given by the range.

The value type of `Iterator` must be `X_monotone_curve_2`.

Precondition
  The curves in the range must define a simple polygon.