CGAL 4.7  3D Periodic Triangulations

The main classes of the 3D Periodic Triangulation package are Periodic_3_triangulation_3
and Periodic_3_Delaunay_triangulation_3
. They contain functionality to access triangulations and to run queries on them. Periodic_3_Delaunay_triangulation_3
can construct and modify Delaunay triangulations. It takes the geometric traits as well as the triangulation data structure as template parameters.
The geometric traits class must be a model of the concept Periodic_3DelaunayTriangulationTraits_3
for periodic Delaunay triangulations, or Periodic_3TriangulationTraits_3
for periodic triangulations. It must contains all predicates and constructions that are needed by the functions in the triangulation classes.
The package uses Triangulation_data_structure_3
to represent the triangulation. The cells and vertices need to be models of the concepts Periodic_3TriangulationDSCellBase_3
and Periodic_3TriangulationDSVertexBase_3
, respectively. A triangulation is stored as a collection of vertices and cells that are linked together through incidence and adjacency relations. Each cell gives access to its four incident vertices and to its four adjacent cells. Each vertex gives access to one of its incident cells.
The four vertices of a cell are indexed with 0, 1, 2 and 3 in positive orientation, the positive orientation being defined by the orientation of the underlying space \( \mathbb T_c^3\). The neighbors of a cell are also indexed with 0, 1, 2, 3 in such a way that the neighbor indexed by \( i\) is opposite to the vertex with the same index. See Figure 42.2.
In order to be able to specify the tetrahedra that contain vertices both inside and outside the original domain we store an additional offset information in each vertex of a cell. These offsets are models of the concept Periodic_3Offset_3
.
Periodic_3TriangulationTraits_3
Periodic_3DelaunayTriangulationTraits_3
TriangulationDataStructure_3
Periodic_3TriangulationDSCellBase_3
Periodic_3TriangulationDSVertexBase_3
Periodic_3Offset_3
CGAL::Periodic_3_triangulation_3<PT,TDS>
CGAL::Periodic_3_Delaunay_triangulation_3<PT,TDS>
CGAL::Periodic_3_triangulation_hierarchy_3<PTr>
CGAL::Periodic_3_triangulation_ds_cell_base_3<>
CGAL::Periodic_3_triangulation_ds_vertex_base_3<>
CGAL::Periodic_3_offset_3
CGAL::Periodic_3_triangulation_traits_3<Traits,Periodic_3Offset_3>
CGAL::Periodic_3_Delaunay_triangulation_traits_3<Traits,Periodic_3Offset_3>
Modules  
Concepts  
Main Classes  
Traits Classes  
Enums  