#include <CGAL/Triangulation_data_structure_3.h>
#include <iostream>
#include <fstream>
#include <cassert>
#include <vector>
 
 
typedef Tds::size_type                              size_type;
typedef Tds::Cell_handle                            Cell_handle;
typedef Tds::Vertex_handle                          Vertex_handle;
 
int main()
{
  Tds T;
 
  assert( T.number_of_vertices() == 0 );
  assert( T.dimension() == -2 );
  assert( T.is_valid() );
 
  std::vector<Vertex_handle> PV(7);
 
  PV[0] = T.insert_increase_dimension();
  assert( T.number_of_vertices() == 1 );
  assert( T.dimension() == -1 );
  assert( T.is_valid() );
 
  
  for ( int i=1; i<5; i++ ) {
    PV[i] = T.insert_increase_dimension(PV[0]);
    assert( T.number_of_vertices() == (size_type) i+1 );
    assert( T.dimension() == i-1 );
    assert( T.is_valid() );
  }
  assert( T.number_of_cells() == 5 );
 
  
 
  
  Cell_handle c = PV[0]->cell();
  int ind;
  [[maybe_unused]] bool check = c->has_vertex( PV[0], ind );
  assert( check );
  
 
  
  PV[5] = T.insert_in_facet(c, ind);
 
  assert( T.number_of_vertices() == 6 );
  assert( T.dimension() == 3 );
  assert( T.is_valid() );
 
  
  PV[6] = T.insert_in_cell(c);
 
  assert( T.number_of_vertices() == 7 );
  assert( T.dimension() == 3 );
  assert( T.is_valid() );
 
  std::ofstream oFileT("output_tds",std::ios::out);
  
  oFileT << T;
 
  return 0;
}
The class Triangulation_data_structure_3 stores a 3D-triangulation data structure and provides the op...
Definition: Triangulation_data_structure_3.h:43