CGAL 5.6 - Linear Cell Complex
Loading...
Searching...
No Matches
Constructions for Linear Cell Complex

Basic constructions.

Functions

template<class LCC >
LCC::Dart_descriptor CGAL::import_from_plane_graph (LCC &lcc, std::istream &ais)
 Imports an embedded plane graph read from ais into lcc, a model of the LinearCellComplex concept.
 
template<class LCC , class Polyhedron >
LCC::Dart_descriptor CGAL::import_from_polyhedron_3 (LCC &lcc, const Polyhedron &apoly)
 Imports apoly (a Polyhedron_3) into lcc, a model of the LinearCellComplex concept.
 
template<class LCC , class Triangulation_ >
LCC::Dart_descriptor CGAL::import_from_triangulation_3 (LCC &lcc, const Triangulation_ &atr)
 Imports atr (a Triangulation_3) into lcc, a model of the LinearCellComplex concept.
 

Function Documentation

◆ import_from_plane_graph()

template<class LCC >
LCC::Dart_descriptor CGAL::import_from_plane_graph ( LCC &  lcc,
std::istream &  ais 
)

#include <CGAL/Linear_cell_complex_constructors.h>

Imports an embedded plane graph read from ais into lcc, a model of the LinearCellComplex concept.

Objects are added in lcc, existing darts are not modified. Returns a dart created during the import.

Precondition
LCC::dimension \( \geq\) 2 and LCC::ambient_dimension==2.

File format

The file format must be the following. First the number of vertices and the number of edges of the planar graph. Then, for each vertex of the planar graph, the coordinates of the \( i^{\mbox{th}}\) vertex (two numbers for \( x\) and \( y\) coordinates). The first vertex index is 0. Then for each edge of the planar graph, the two indices of the two vertices (two numbers between 0 and the number of vertices minus 1).

Here a small example:

5 6
1.0 3.0 0.0 2.0 2.0 2.0 0.0 0.0 2.0 0.0
0 1 0 2 1 2 1 3 2 4 3 4
Example of import_graph reading the above file as istream, middle for combinatorial map as combinatorial data-structure, right for generalized maps.

Left: A planar graph embedded in the plane with P0=(1.0,3.0), P1=(0.0,2.0), P2=(2.0,2.0), P3=(0.0,0.0), P4=(2.0,0.0). Middle: the 2D linear cell complex reconstructed if combinatorial maps are the combinatorial data-structure. Right: the 2D linear cell complex reconstructed if generalized maps are the combinatorial data-structure.

See also
CGAL::import_from_triangulation_3<LCC,Triangulation>
CGAL::import_from_polyhedron_3<LCC,Polyhedron>

◆ import_from_polyhedron_3()

template<class LCC , class Polyhedron >
LCC::Dart_descriptor CGAL::import_from_polyhedron_3 ( LCC &  lcc,
const Polyhedron &  apoly 
)

#include <CGAL/Polyhedron_3_to_lcc.h>

Imports apoly (a Polyhedron_3) into lcc, a model of the LinearCellComplex concept.

Objects are added in lcc, existing darts are not modified. Returns a dart created during the import.

Precondition
LCC::dimension \( \geq\) 2 and LCC::ambient_dimension==3.
See also
CGAL::import_from_plane_graph<LCC>
CGAL::import_from_triangulation_3<LCC,Triangulation>

◆ import_from_triangulation_3()

template<class LCC , class Triangulation_ >
LCC::Dart_descriptor CGAL::import_from_triangulation_3 ( LCC &  lcc,
const Triangulation_ &  atr 
)

#include <CGAL/Triangulation_3_to_lcc.h>

Imports atr (a Triangulation_3) into lcc, a model of the LinearCellComplex concept.

Objects are added in lcc, existing darts are not modified. Returns a dart created during the import.

Precondition
LCC::dimension \( \geq\) 3 and LCC::ambient_dimension==3.
See also
CGAL::import_from_plane_graph<LCC>
CGAL::import_from_polyhedron_3<LCC,Polyhedron>