The class Triangulation_data_structure_2<Vb,Fb> is a model for the TriangulationDataStructure_2 concept. It can be used to represent an orientable 2D triangulation embedded in a space of any dimension.
The vertices and faces are stored in two nested containers, which are implemented using CGAL::Compact_container. The class may offer some flexibility for the choice of container in the future, in the form of additional template parameters.
#include <CGAL/Triangulation_data_structure_2.h>
In addition to the interface documented in the concept, the class offers the following types and functions.
 
 Vertex container type.  
 
 Face container type. 
In addition to the modifiers required by the TriangulationDataStructure_2 concept, the Triangulation_data_structure_2<Vb,Fb> class supports also the modifiers below. Note also that the modifiers below guarantee the combinatorial validity of the resulting data structure.

 
Joins
the vertices that are endpoints of the edge (f,i). It returns
a vertex handle to common vertex (see
Fig. 34.5).
 

 Joins the vertices that are endpoints of the edge e. It returns a vertex handle to common vertex.  

 
Joins the vertices that are endpoints of the edge *eit. It returns a vertex handle to common vertex.  

 
Joins the vertices that are endpoints of the edge *ec. It returns a vertex handle to common vertex.  
 
 
Splits the vertex v into two vertices v1 and
v2. The common faces f and g of v1 and
v2 are created after (in the counterclockwise sense) the
faces f1 and f2. The 4tuple (v1,v2,f,g) is
returned (see Fig. 34.5).
 

 
Inserts a degree two vertex and two faces adjacent to it that have two common edges. The edge defined by the face handle f and the integer i is duplicated. It returns a handle to the vertex created (see Fig. 34.6).  

 
Removes a degree 2
vertex and the two faces adjacent to it. The two edges of the star of
v that are not incident to it are collapsed
(see Fig. 34.6).
