CGAL 4.11  3D Triangulation Data Structure

The triangulation data structure is able to represent a triangulation of a topological sphere \( S^d\) of \( \mathbb{R}^{d+1}\), for \( d \in \{1,0,1,2,3\}\). (See Representation.)
The vertex class of a 3Dtriangulation data structure must define a number of types and operations. The requirements that are of geometric nature are required only when the triangulation data structure is used as a layer for the geometric triangulation classes. (See Section Software Design.)
The cell class of a triangulation data structure stores four handles to its four vertices and four handles to its four neighbors. The vertices are indexed 0, 1, 2, and 3 in a consistent order. The neighbor indexed \( i\) lies opposite to vertex i
.
In degenerate dimensions, cells are used to store faces of maximal dimension: in dimension 2, each cell represents only one facet of index 3, and 3 edges \( (0,1)\), \( (1,2)\) and \( (2,0)\); in dimension 1, each cell represents one edge \( (0,1)\). (See Section Representation.)
TriangulationDataStructure_3
TriangulationDataStructure_3::Cell
TriangulationDataStructure_3::Vertex
TriangulationDSCellBase_3
TriangulationDSVertexBase_3
CGAL::Triangulation_data_structure_3<TriangulationDSVertexBase_3,TriangulationDSCellBase_3,Vertex_container_strategy,Cell_container_strategy,Concurrency_tag>
is a model for the concept of the 3Dtriangulation data structure TriangulationDataStructure_3
. It is templated by base classes for vertices and cells.CGAL provides base vertex classes and base cell classes:
CGAL::Triangulation_utils_3
defines operations on the indices of vertices and neighbors within a cell of a triangulation. Modules  
Concepts  
Classes  