\( \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.8 - dD Triangulations

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
DelaunayTriangulationTraits Concept Reference
Concepts

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

## Operations
The following methods permit access to the traits class's predicates:
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

typedef unspecified_type DelaunayTriangulationTraits::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.

typedef unspecified_type DelaunayTriangulationTraits::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.