\( \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 - Kinetic Data Structures

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
CGAL::Kinetic::Delaunay_triangulation_3< Traits, Visitor, Triangulation > Class Template Reference
Delaunay and Regular Triangulations in 3D

`#include <CGAL/Kinetic/Delaunay_triangulation_3.h>`

## Definition

The class `Kinetic::Delaunay_triangulation_3` maintains a Delaunay triangulation on top of the points contained in a `Kinetic::ActiveObjectsTable`.

It has one main method of interest. `triangulation()` which returns the triangulation it is maintaining. In addition, as an optimisation, you can turn on and off whether it is currently maintaining its certificates. This allows a large number of changes to the underlying points to be made at one time without recomputing the certificates each time a single point changes.

Note that the Delaunay triangulation is fully dynamic as it tracks points added to and removed from the `Kinetic::ActiveObjectsTable`.

The class `Kinetic::Qt_triangulation_3<Traits>`, included as part of the demo code, displays a kinetic Delaunay triangulation in three dimensions using the Coin library.

The optional `Visitor` template argument is a model of `Kinetic::DelaunayTriangulationVisitor_3` and can be used to monitor changes in the kinetic data structure.

The optional `Triangulation` template argument must be a model of a `CGAL::DelaunayTriangulation_3` which uses `Traits::Default_instantaneous_kernel` as its geometric traits and has `Kinetic::Delaunay_triangulation_cell_base_3<Traits, Base>` a the cell type.

See Also
  `Kinetic::Regular_triangulation_3<Traits, Triangulation, Visitor>`
  `Kinetic::Delaunay_triangulation_2<Traits, Triangulation, Visitor`
  `Kinetic::Delaunay_triangulation_visitor_base_3`
  `Kinetic::Delaunay_triangulation_event_log_visitor_3`

## Types
typedef unspecified_type | Triangulation
| The template argument.
typedef unspecified_type | Visitor
| The template argument.

## Creation
| Delaunay_triangulation_3 (Traits tr)
| Maintain the Delaunay triangulation of the points in `tr.active_points_3_handle()`.

## Operations
const Triangulation * | triangulation ()
| Access the triangulation that is maintained.
bool | has_certificates ()
| This method returns true if the `Kinetic::Delaunay_triangulation_3` is currently maintaining certificates for a Delaunay triangulation.
void | set_has_certificates (bool tf)
| This method allows you to control whether the triangulation is maintaining certificates.
Visitor & | visitor ()
| Access the visitor.