CGAL 6.1 - Linear Cell Complex
Loading...
Searching...
No Matches
CGAL::Linear_cell_complex_incremental_builder_3< LCC > Class Template Reference

#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
LCCmust 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:

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.
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.

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().
 

Member Typedef Documentation

◆ DH

template<class LCC >
typedef LCC::Dart_descriptor CGAL::Linear_cell_complex_incremental_builder_3< LCC >::DH

◆ LCC

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

◆ Point_3

template<class LCC >
typedef LCC::Point CGAL::Linear_cell_complex_incremental_builder_3< LCC >::Point_3

◆ size_type

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

◆ VAH

template<class LCC >
typedef LCC::Vertex_attribute_descriptor CGAL::Linear_cell_complex_incremental_builder_3< LCC >::VAH

Constructor & Destructor Documentation

◆ Linear_cell_complex_incremental_builder_3()

template<class LCC >
CGAL::Linear_cell_complex_incremental_builder_3< LCC >::Linear_cell_complex_incremental_builder_3 ( LCC alcc)

Constructor.

Member Function Documentation

◆ add_facet()

template<class LCC >
DH CGAL::Linear_cell_complex_incremental_builder_3< LCC >::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().

Examples
Linear_cell_complex/linear_cell_complex_3_incremental_builder.cpp.

◆ add_vertex()

template<class LCC >
VAH CGAL::Linear_cell_complex_incremental_builder_3< LCC >::add_vertex ( const Point_3 p)

adds a new vertex for p and returns its handle.

Examples
Linear_cell_complex/linear_cell_complex_3_incremental_builder.cpp.

◆ add_vertex_to_facet()

template<class LCC >
void CGAL::Linear_cell_complex_incremental_builder_3< LCC >::add_vertex_to_facet ( size_type  i)

adds vertex i at the end of the current facet.

Examples
Linear_cell_complex/linear_cell_complex_3_incremental_builder.cpp.

◆ begin_facet()

◆ begin_surface()

template<class LCC >
void CGAL::Linear_cell_complex_incremental_builder_3< LCC >::begin_surface ( )

◆ end_facet()

template<class LCC >
DH CGAL::Linear_cell_complex_incremental_builder_3< LCC >::end_facet ( )

ends the construction of the facet and returns the first dart of this facet.

Examples
Linear_cell_complex/linear_cell_complex_3_incremental_builder.cpp.

◆ end_surface()

template<class LCC >
DH CGAL::Linear_cell_complex_incremental_builder_3< LCC >::end_surface ( )

ends the construction of the surface and returns one dart of the created surface.

Examples
Linear_cell_complex/linear_cell_complex_3_incremental_builder.cpp.