CGAL 6.0.2 - Linear Cell Complex

Loading...
Searching...
No Matches
List of all members | Public Types
CGAL::Linear_cell_complex_incremental_builder_3< LCC > Class Template Reference
Linear Cell Complex Reference » Classes

`#include <CGAL/Linear_cell_complex_incremental_builder_3.h>`

## Definition

template<class LCC>
class CGAL::Linear_cell_complex_incremental_builder_3< LCC >

The auxiliary class `Linear_cell_complex_incremental_builder_3` supports the incremental construction of linear cell complexes.

Template Parameters

  LCC | must be a model of the concept `LinearCellComplex`

Examples
  Linear_cell_complex/linear_cell_complex_3_incremental_builder.cpp.

## Public Types
typedef LCC_ | LCC
typedef LCC::Dart_descriptor | DH
typedef LCC::Vertex_attribute_descriptor | VAH
typedef LCC::Point | Point_3
typedef LCC::size_type | size_type

## Creation
| Linear_cell_complex_incremental_builder_3 (LCC &alcc)
| Constructor.

## Surface Creation
To build a linear cell complex, the following regular expression gives the correct and allowed order and nesting of method calls from this section: begin_surface ( add_vertex | ( begin_facet add_vertex_to_facet end_facet ) ) end_surface CGAL::Linear_cell_complex_incremental_builder_3::begin_surface void begin_surface() starts a new surface. CGAL::Linear_cell_complex_incremental_builder_3::end_surface DH end_surface() ends the construction of the surface and returns one dart of the created surface. CGAL::Linear_cell_complex_incremental_builder_3::add_vertex_to_facet void add_vertex_to_facet(size_type i) adds vertex i at the end of the current facet. CGAL::Linear_cell_complex_incremental_builder_3::begin_facet void begin_facet() starts a new facet. CGAL::Linear_cell_complex_incremental_builder_3::end_facet DH end_facet() ends the construction of the facet and returns the first dart of this facet. CGAL::Linear_cell_complex_incremental_builder_3::add_vertex VAH add_vertex(const Point_3 &p) adds a new vertex for p and returns its handle. When an edge is added in a facet, if the same edge exists in another facet of the same surface, then the two facets are glued along this edge. When a facet is added, if the same facet exists in another surface, the two surfaces are glued along this facet.
void | begin_surface ()
| starts a new surface.
VAH | add_vertex (const Point_3 &p)
| adds a new vertex for `p` and returns its handle.
void | begin_facet ()
| starts a new facet.
void | add_vertex_to_facet (size_type i)
| adds vertex `i` at the end of the current facet.
DH | end_facet ()
| ends the construction of the facet and returns the first dart of this facet.
DH | end_surface ()
| ends the construction of the surface and returns one dart of the created surface.

## Additional Operations
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,beyond)`, and a call to `end_facet()`.