\( \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.12 - dD Triangulations
CGAL::Triangulation_ds_full_cell< TriangulationDataStructure_, TriangulationDSFullCellStoragePolicy > Class Template Reference

#include <CGAL/Triangulation_ds_full_cell.h>


This class is the default model used for the full cell of the class Triangulation_data_structure.

This class does not provide any geometric capabilities but only combinatorial (adjacency) information. Thus, if the Triangulation_data_structure is used as a parameter of an (embedded) Triangulation, then its full cell template parameter has to fulfill additional geometric requirements, i.e. it has to be a model of the refined concept TriangulationFullCell.

This class can be used directly or can serve as a base to derive other classes with some additional attributes tuned for a specific application.

Template Parameters
<tt>TriangulationDataStructure_</tt>must be a model of the TriangulationDataStructure concept.
TriangulationDSFullCellStoragePolicyindicates whether or not the full cell should additionally store the mirror indices (the indices of the mirror vertices). This improves speed a little, but takes more space.
The class template Triangulation_ds_full_cell accepts that no second parameter be specified. It also accepts the tag CGAL::Default as second parameter. Both cases are equivalent to setting TriangulationDSFullCellStoragePolicy to CGAL::TDS_full_cell_default_storage_policy.

When the second parameter is specified, its possible values are:

  • CGAL::Default, which is the default value. In that case, the policy CGAL::TDS_full_cell_default_storage_policy is used (i.e. the mirror indices are not stored).
  • CGAL::TDS_full_cell_default_storage_policy. In that case, the mirror indices are not stored.
  • CGAL::TDS_full_cell_mirror_storage_policy. In that case, the mirror indices are stored.

See the user manual for how to choose the second option.

Is Model Of:

Rebind mechanism

In case of derivation from that class, the nested class Rebind_TDS need to be provided in the derived class.

See also
Triangulation_data_structure<Dimensionality, TriangulationDSVertex_, TriangulationDSFullCell_>

Validity Check

bool is_valid (bool verbose=false) const
Implements the validity checks required by the concept TriangulationDSFullCell. More...

Member Function Documentation

◆ is_valid()

template<typename TriangulationDataStructure_ , typename TriangulationDSFullCellStoragePolicy >
bool CGAL::Triangulation_ds_full_cell< TriangulationDataStructure_, TriangulationDSFullCellStoragePolicy >::is_valid ( bool  verbose = false) const

Implements the validity checks required by the concept TriangulationDSFullCell.