cgal/Triangulation/doc_tex/Triangulation_ref/Tds_vertex.tex

79 lines
2.6 KiB
TeX

\begin{ccRefConcept}[TriangulationDataStructure::]{Vertex}
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[concept]{} %% add further index entries
\ccDefinition
The concept \ccRefName\ represents the vertex class of a triangulation
data structure. It must define
the types and operations listed in this section. Some of these
requirements are of geometric nature, they are \textit{optional}
when using the triangulation data structure class alone. They become
compulsory when the triangulation data structure is used as a layer
for the geometric triangulation class.
\ccTypes
\ccTwo{typedef TriangulationDataStructure}{}
\ccNestedType{Point}{\textit{Optional for the triangulation data
structure alone.}}
The class \ccRefName\ defines types that are the same as some of the
types defined by the triangulation data structure class
\ccc{TriangulationDataStructure}.
\ccThree{typedef TriangulationDataStructure::Full_cell_handle}{Full_cell_handle}{}
\ccThreeToTwo
\ccTypedef{typedef TriangulationDataStructure Triangulation_data_structure;}{}
\ccGlue
\ccTypedef{typedef TriangulationDataStructure::Vertex_handle Vertex_handle;}{}
\ccGlue
\ccTypedef{typedef TriangulationDataStructure::Full_cell_handle Full_cell_handle;}{}
\ccCreation
\ccCreationVariable{v} %% choose variable name
In order to obtain new vertices or destruct unused vertices, the user must
call the \ccc{new_vertex()} or \ccc{delete_vertex()} method of the
triangulation data structure.
\ccOperations
\ccThree{Full_cell_handle}{v.set_full_cell(Full_cell_handle cx)}{}
\ccAccessFunctions
\ccMethod{Full_cell_handle full_cell() const;}
{Returns a full cell of the triangulation having \ccVar\ as vertex.}
\ccMethod{Point point() const;}
{Returns the point stored in the vertex.
{\textit{Optional for the triangulation data structure alone.}}}
\ccHeading{Setting}
\ccMethod{void set_full_cell(Full_cell_handle c);}
{Sets the incident cell to \ccc{c}.}
\ccMethod{void set_point(const Point & p);}
{Sets the point to \ccc{p}. {\textit{Optional for the
triangulation data structure alone.}}}
\begin{ccDebug}
\ccHeading{Checking}
\ccThree{Full_cell_handle}{v.is_valid()}{}
\ccMethod{bool is_valid(bool verbose = false) const;}
{Checks the validity of the vertex. Must check that its incident cell
has this vertex. The validity of the base vertex is also checked.\\
When \ccc{verbose} is set to \ccc{true}, messages are printed to give
a precise indication on the kind of invalidity encountered.}
\end{ccDebug}
\ccSeeAlso
\ccc{TriangulationDataStructure::FullCell}\\
\ccc{TriangulationDataStructure}.
\end{ccRefConcept}