\( \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 5.0 - 2D Conforming Triangulations and Meshes
ConformingDelaunayTriangulationTraits_2 Concept Reference

Definition

The concept ConformingDelaunayTriangulationTraits_2 refines the concept ConstrainedDelaunayTriangulationTraits_2 by providing a numeric field type FT, a type Vector_2 and several constructors on Vector_2, Point_2, and a predicate on angles. The field type has to be a model of the concept FieldWithSqrt. This field type and the constructors are used by the conforming algorithm to compute Steiner points on constrained edges.

Refines:
DelaunayTriangulationTraits_2
Has Models:

Any model of Kernel concept. In particular, all CGAL kernels

Projection_traits_xy_3<K>

Types

typedef unspecified_type FT
 The field type. More...
 
typedef unspecified_type Vector_2
 The vector type.
 
typedef unspecified_type Construct_vector_2
 Constructor object. More...
 
typedef unspecified_type Construct_scaled_vector_2
 Constructor object. More...
 
typedef unspecified_type Construct_translated_point_2
 Constructor object. More...
 
typedef unspecified_type Construct_midpoint_2
 Constructor object. More...
 
typedef unspecified_type Compute_squared_distance_2
 Constructor object. More...
 
typedef unspecified_type Angle_2
 Predicate object. More...
 

Access to predicate and constructor objects

Construct_vector_2 construct_vector_2_object ()
 
Construct_scaled_vector_2 construct_scaled_vector_2_object ()
 
Construct_translated_point_2 construct_translated_point_2_object ()
 
Construct_midpoint_2 construct_midpoint_2_object ()
 
Compute_squared_distance_2 compute_squared_distance_2_object ()
 
Angle_2 angle_2_object ()
 

Member Typedef Documentation

◆ Angle_2

Predicate object.

Must provide the operator CGAL::Angle operator()(Point_2 p, Point_2 q, Point_2 r) that returns OBTUSE, RIGHT or ACUTE depending on the angle formed by the three points p, q, r (q being the vertex of the angle).

◆ Compute_squared_distance_2

Constructor object.

Must provide the operator FT operator()(Point_2 a, Point_2 b) that computes the squared distance between a and b.

◆ Construct_midpoint_2

Constructor object.

Must provide the operator Point_2 operator()(Point_2 a, Point_2 b) that computes the midpoint of the segment \( ab\).

◆ Construct_scaled_vector_2

Constructor object.

Must provide the operator Vector_2 operator()(Vector_2 v, FT scale) that computes the vector scale \(\cdot\) v.

◆ Construct_translated_point_2

Constructor object.

Must provide the operator Point_2 operator()(Point_2 p, Vector_2 v) that computes the point p+v.

◆ Construct_vector_2

Constructor object.

Must provide the operator Vector_2 operator()(Point a, Point b) that computes the vector b-a.

◆ FT

The field type.

It must be a model of FieldWithSqrt, that is must be a number type supporting the operations \( +\), \( -\), \( *\), \( /\), and \( \sqrt{\cdot}\).