CGAL 5.0.2 - dD Triangulations
DelaunayTriangulationTraits Concept Reference

Definition

This concept describes the geometric types and predicates required to build a Delaunay triangulation. It corresponds to the first template parameter of the class CGAL::Delaunay_triangulation<DelaunayTriangulationTraits_, TriangulationDataStructure_>.

Refines:
TriangulationTraits
Has Models:

CGAL::Epick_d<Dim>

CGAL::Epeck_d<Dim>

TriangulationTraits

Types

typedef unspecified_type Side_of_oriented_sphere_d
A predicate object that must provide the templated operator template<typename ForwardIterator> Oriented_side operator()(ForwardIterator start, ForwardIterator end, const Point_d & p). More...

typedef unspecified_type In_flat_side_of_oriented_sphere_d
A predicate object that must provide the templated operator template<typename ForwardIterator> Oriented_side operator()(Flat_orientation_d orient, ForwardIterator start, ForwardIterator end, const Point_d & p). More...

Creation

DelaunayTriangulationTraits ()
The default constructor (optional). More...

Operations

The following methods permit access to the traits class's predicates and functors:

Side_of_oriented_sphere_d side_of_oriented_sphere_d_object () const

In_flat_side_of_oriented_sphere_d in_flat_side_of_oriented_sphere_d_object () const

◆ In_flat_side_of_oriented_sphere_d

A predicate object that must provide the templated operator template<typename ForwardIterator> Oriented_side operator()(Flat_orientation_d orient, ForwardIterator start, ForwardIterator end, const Point_d & p).

The operator returns ON_POSITIVE_SIDE, ON_NEGATIVE_SIDE or ON_ORIENTED_BOUNDARY depending of the side of the query point p with respect to the sphere circumscribing the simplex defined by the points in range [start,end). If the simplex is positively oriented according to orient, then the positive side of sphere corresponds geometrically to its bounded side. The points in range [start,end) and p are supposed to belong to the lower dimensional flat whose orientation is given by orient.

Precondition
std::distance(start,end)=k+1 where $$k$$ is the number of points used to construct orient. The points in range [start,end) must be affinely independent, i.e., the simplex must not be flat. p must be in the flat generated by this simplex.

◆ Side_of_oriented_sphere_d

A predicate object that must provide the templated operator template<typename ForwardIterator> Oriented_side operator()(ForwardIterator start, ForwardIterator end, const Point_d & p).

The operator returns ON_POSITIVE_SIDE, ON_NEGATIVE_SIDE or ON_ORIENTED_BOUNDARY depending of the side of the query point p with respect to the sphere circumscribing the simplex defined by the points in range [start,end). If the simplex is positively oriented, then the positive side of sphere corresponds geometrically to its bounded side.

Precondition
If Dimension=CGAL::Dimension_tag<D>, then std::distance(start,end)=D+1. The points in range [start,end) must be affinely independent, i.e., the simplex must not be flat.

◆ DelaunayTriangulationTraits()

 DelaunayTriangulationTraits::DelaunayTriangulationTraits ( )

The default constructor (optional).

This is not required when an instance of the traits is provided to the constructor of CGAL::Delaunay_triangulation.