ConformingDelaunayTriangulationTraits_2

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 SqrtFieldNumberType. This field type and the constructors are used by the conforming algorithm to compute Steiner points on constrained edges.

Refines

DelaunayTriangulationTraits_2

Types

ConformingDelaunayTriangulationTraits_2::FT
The field type. It must be a model of SqrtFieldNumberType, that is must be a number type supporting the operations +, -, *, /, and sqrt( · ).


ConformingDelaunayTriangulationTraits_2::Vector_2
The vector type.


ConformingDelaunayTriangulationTraits_2::Construct_vector_2
Constructor object. Must provide the operator Vector_2 operator()(Point a, Point b) that computes the vector b-a.


ConformingDelaunayTriangulationTraits_2::Construct_scaled_vector_2
Constructor object. Must provide the operator Vector_2 operator()(Vector_2 v, FT scale) that computes the vector scale · v.


ConformingDelaunayTriangulationTraits_2::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.


ConformingDelaunayTriangulationTraits_2::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.


ConformingDelaunayTriangulationTraits_2::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.


ConformingDelaunayTriangulationTraits_2::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).

Access to predicate and constructor objects

Construct_vector_2 traits.construct_vector_2_object ()
Construct_scaled_vector_2 traits.construct_scaled_vector_2_object ()
Construct_translated_point_2 traits.construct_translated_point_2_object ()
Constructor_midpoint_2 traits.construct_midpoint_2_object ()
Compute_squared_distance_2 traits.compute_squared_distance_2_object ()
Angle_2 traits.angle_2_object ()

Has Models

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