\( \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.13.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>
See also
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
 

Member Typedef Documentation

◆ 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.

Constructor & Destructor Documentation

◆ 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.