CGAL 6.1.2 - 2D Conforming Triangulations and Meshes: ConformingDelaunayTriangulationTraits_2 Concept Reference

CGAL 6.1.2 - 2D Conforming Triangulations and Meshes

Loading...
Searching...
No Matches
List of all members
ConformingDelaunayTriangulationTraits_2 Concept Reference
Reference Manual » Concepts

## 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
  All models of the CGAL concept `Kernel`
  `CGAL::Projection_traits_xy_3<K>`

## Types
typedef unspecified_type | FT
| The field type.
typedef unspecified_type | Vector_2
| The vector type.
typedef unspecified_type | Construct_vector_2
| Constructor object.
typedef unspecified_type | Construct_scaled_vector_2
| Constructor object.
typedef unspecified_type | Construct_translated_point_2
| Constructor object.
typedef unspecified_type | Construct_midpoint_2
| Constructor object.
typedef unspecified_type | Compute_squared_distance_2
| Constructor object.
typedef unspecified_type | Angle_2
| Predicate object.
typedef unspecified_type | Oriented_side_2
| Predicate object.

## 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

typedef unspecified_type 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).

## ◆ Compute_squared_distance_2

typedef unspecified_type 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`.

## ◆ Construct_midpoint_2

typedef unspecified_type 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\).

## ◆ Construct_scaled_vector_2

typedef unspecified_type 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` \(\cdot\) `v`.

## ◆ Construct_translated_point_2

typedef unspecified_type 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`.

## ◆ Construct_vector_2

typedef unspecified_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`.

## ◆ FT

typedef unspecified_type ConformingDelaunayTriangulationTraits_2::FT

The field type.

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

## ◆ Oriented_side_2

typedef unspecified_type ConformingDelaunayTriangulationTraits_2::Oriented_side_2

Predicate object.

Must provide the operator `CGAL::Oriented_side operator()(Segment_2 s, Triangle_2 t)` that returns CGAL::ON_ORIENTED_BOUNDARY, CGAL::ON_NEGATIVE_SIDE, or CGAL::ON_POSITIVE_SIDE, depending on the position of the circumcenter of `t` relative to the oriented supporting line of `s`. The orientation of the supporting line is the same as the orientation of `s`.