mirror of https://github.com/CGAL/cgal
99 lines
3.6 KiB
TeX
99 lines
3.6 KiB
TeX
\begin{ccRefClass}{Triangulation_data_structure<Dimensionality, TriangulationDSVertex, TriangulationDSFullCell>}
|
|
|
|
\ccDefinition
|
|
This class is used for storing the combinatorial information of a triangulation
|
|
of dimension $k\leq d$.
|
|
|
|
\ccInclude{CGAL/Triangulation_data_structure.h}
|
|
|
|
\ccParameters
|
|
|
|
\ccc{Dimensionality} can be either \begin{itemize}
|
|
|
|
\item \ccPureGlobalScope\ccc{Dimension_tag<d>} for some integer \ccc{d}. This
|
|
indicates that the triangulation data structure can store simplices (full cells) of dimension at most
|
|
\ccc{d}. The maximum dimension \ccc{d} is known by the compiler, which
|
|
triggers some optimizations. Or
|
|
|
|
\item \ccPureGlobalScope\ccc{Dynamic_dimension_tag}. In this case, the maximum
|
|
dimension of the simplices (full cells) is passed as an integer argument to an instance
|
|
constructor (see \ccc{TriangulationDataStructure}).\end{itemize}
|
|
|
|
\ccc{TriangulationDSVertex} is the class to be used as the base \ccc{Vertex} type in the
|
|
triangulation data structure. It must be a model of the concept
|
|
\ccc{TriangulationDSVertex}. The class template \ccRefName\ can be
|
|
defined by specifying
|
|
only the first parameter. It also accepts the tag \ccc{CGAL::Default} as
|
|
second parameter. In both cases, \ccc{TriangulationDSVertex} defaults to
|
|
\ccc{CGAL::Triangulation_ds_vertex<>}.
|
|
|
|
|
|
\ccc{TriangulationDSFullCell} is the class to be used as the base \ccc{Full_cell} type in
|
|
the triangulation data structure. It must be a model of the concept
|
|
\ccc{TriangulationDSFullCell}. The class template \ccRefName\ accepts that no
|
|
third parameter be specified. It also accepts the tag \ccc{CGAL::Default} as
|
|
third parameter. In both cases, \ccc{TriangulationDSFullCell} defaults to
|
|
\ccc{CGAL::Triangulation_ds_full_cell<>}.
|
|
|
|
\ccIsModel
|
|
|
|
\ccc{TriangulationDataStructure}.
|
|
|
|
In addition, the class \ccRefName\ provides the following types and methods:
|
|
|
|
\ccCreation
|
|
\ccCreationVariable{t}
|
|
|
|
\ccConstructor{XXXXXXX(const Triangulation_data_structure & t2);}
|
|
{The copy constructor. Creates a copy of the \ccRefName\ \ccc{t2} passed as
|
|
argument. All vertices and full cells are duplicated.}
|
|
|
|
\begin{ccDebug}
|
|
\ccHeading{Validity check} % - - - - - - - - - - - - - - - - - - - - VALIDITY
|
|
|
|
The \ccc{is_valid} method is only minimally defined in the
|
|
\ccc{TriangulationDataStructure} concept, so that we document it more precisely
|
|
here, for the model \ccRefName:
|
|
|
|
\ccMethod{bool is_valid(bool verbose = true) const;}{%
|
|
Implements the validity checks required by the concept
|
|
\ccc{TriangulationDataStructure}.%
|
|
|
|
Note that passing all these tests does not guaranty that we have a
|
|
triangulation (abstract pure simplicial complex).%
|
|
}
|
|
|
|
\end{ccDebug}
|
|
|
|
\begin{ccAdvanced}
|
|
|
|
\ccTypes
|
|
|
|
\ccNestedType{Full_cell_data}
|
|
{A data member of type \ccc{Full_cell_data} is stored in every full cell (models
|
|
of the concept \ccc{TriangulationDSFullCell}). It is used to mark
|
|
some
|
|
full cells, during modifications of the triangulation data structure.}
|
|
|
|
\ccHeading{Vertex insertion} % - - - - - - - - - - - - - - - - - - INSERTIONS
|
|
|
|
\ccMethod{template< OutputIterator > Full_cell_handle insert_in_tagged_hole(
|
|
Vertex_handle v, Facet f, OutputIterator new_full_cells);}
|
|
{A set \ccc{C} of full cells satisfying the same condition as in method
|
|
\ccRefName\ccc{::insert_in_hole()} is assumed to be marked. This
|
|
method creates new full cells from vertex \ccc{v} to the boundary of \ccc{C}.
|
|
The boundary is recognized by checking the mark of the full cells.
|
|
This method is used by \ccRefName\ccc{::insert_in_hole()}.
|
|
\ccPrecond same as \ccRefName\ccc{::insert_in_hole()}
|
|
}
|
|
|
|
\end{ccAdvanced}
|
|
|
|
\ccSeeAlso
|
|
|
|
\ccc{Triangulation_ds_vertex}\\
|
|
\ccc{Triangulation_ds_full_cell}\\
|
|
\ccc{Triangulation}
|
|
|
|
\end{ccRefClass}
|