#include <CGAL/Linear_cell_complex_for_combinatorial_map.h>
#include <CGAL/Linear_cell_complex_incremental_builder_3.h>
#include <CGAL/draw_linear_cell_complex.h>
using Point=LCC_3::Point;
int main()
{
LCC_3 lcc;
LCC_3::One_dart_per_cell_range<3,3> cells = lcc.one_dart_per_cell<3>();
for (auto c = cells.begin(); c != cells.end(); ++c) {
std::cout << "a cell"<< std::endl;
LCC_3::One_dart_per_incident_cell_range<2,3> faces = lcc.one_dart_per_incident_cell<2,3>(c);
for (auto f = faces.begin(); f != faces.end(); ++f) {
std::cout << " a face"<< std::endl;
LCC_3::One_dart_per_incident_cell_range<0,2> vertices = lcc.one_dart_per_incident_cell<0,2>(f);
for(auto v = vertices.begin(); v!= vertices.end(); ++v){
std::cout << " " << lcc.point(v) << std::endl;
}
}
}
lcc.display_characteristics(std::cout)<<std::endl;
return EXIT_SUCCESS;
}
The class Linear_cell_complex_for_combinatorial_map represents a linear cell complex in dimension d,...
Definition: Linear_cell_complex_for_combinatorial_map.h:30
The auxiliary class Linear_cell_complex_incremental_builder_3 supports the incremental construction o...
Definition: Linear_cell_complex_incremental_builder_3.h:15
void begin_surface()
starts a new surface.
DH add_facet(std::initializer_list< size_type > l)
is a synonym for begin_facet(), a call to add_vertex_to_facet() for each value in the range [first,...
DH end_surface()
ends the construction of the surface and returns one dart of the created surface.
void add_vertex_to_facet(size_type i)
adds vertex i at the end of the current facet.
void begin_facet()
starts a new facet.
DH end_facet()
ends the construction of the facet and returns the first dart of this facet.
VAH add_vertex(const Point_3 &p)
adds a new vertex for p and returns its handle.
void draw(const POLY &apoly)