\( \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 - 2D Polygons
PolygonTraits_2 Concept Reference


The CGAL::Polygon_2 class and the functions that implement the functionality found in that class each are parameterized by a traits class that defines the primitives used in the algorithms. The concept PolygonTraits_2 defines this common set of requirements.

The requirements of PolygonTraits_2 are a subset of the kernel requirements. We only list the types and methods which are required and refer to the description of the kernel concept for details.

Has Models:

The kernels supplied by CGAL are models of PolygonTraits_2.




See also
CGAL::Polygon_2<PolygonTraits_2, Container>


 PolygonTraits_2 ()
 PolygonTraits_2 (const PolygonTraits_2 &)


typedef unspecified_type FT
typedef unspecified_type Point_2
 The point type.
typedef unspecified_type Segment_2
 The segment type.
typedef unspecified_type Construct_segment_2
typedef unspecified_type Equal_2
typedef unspecified_type Less_xy_2
typedef unspecified_type Less_yx_2
typedef unspecified_type Compare_x_2
typedef unspecified_type Compare_y_2
typedef unspecified_type Orientation_2
typedef unspecified_type Compute_area_2
 Computes the signed area of the oriented triangle defined by 3 Point_2 passed as arguments.


The following functions that create instances of the above predicate object types must exist.

Equal_2 equal_2_object ()
Less_xy_2 less_xy_2_object ()
Less_yx_2 less_yx_2_object ()
Compare_y_2 compare_y_2_object ()
Compare_x_2 compare_x_2_object ()
Orientation_2 orientation_2_object ()
Compute_area_2 compute_area_2_object ()
Construct_segment_2 construct_segment_2_object ()