has_vertex(facet) and are_equal(2facets) documented

fix in scopes of classes and concepts
This commit is contained in:
Monique Teillaud 2000-07-31 16:03:23 +00:00
parent f254c665da
commit 6cfad30b4b
28 changed files with 218 additions and 86 deletions

View File

@ -296,6 +296,39 @@ order.
\ccPrecond{\ccc{u}, \ccc{v}, \ccc{w} and \ccc{x} are vertices of \ccVar.}\\
\textit{not yet implemented}}
There is a method \ccc{has_vertex} in the cell class. The analogous
methods for facets are defined here.
\ccMethod{bool has_vertex(const Facet & f, Vertex_handle v, int & j) const;}
{If \ccc{v} is a vertex of \ccc{f}, then \ccc{j} is the index of
\ccc{v} in the cell \ccc{f.first}, and the method returns \ccc{true}.
\ccPrecond{\ccVar.dimension()==3}}
\ccGlue
\ccMethod{bool has_vertex(Cell_handle c, int i,
Vertex_handle v, int & j) const;}
{Same for facet \ccc{(c,i)}. Computes the index \ccc{j} of \ccc{v} in
\ccc{c}.}
\ccGlue
\ccMethod{bool has_vertex(const Facet & f, Vertex_handle v) const;}
{}
\ccGlue
\ccMethod{bool has_vertex(Cell_handle c, int i, Vertex_handle v) const;}
{Same as the first two methods, but these two methods do not return the
index of the vertex.}
The following three methods test whether two facets have the same
vertices.
\ccMethod{bool are_equal(Cell_handle c, int i, Cell_handle n, int j) const;}
{}
\ccGlue
\ccMethod{bool are_equal(const Facet & f, const Facet & g) const;}
{}
\ccGlue
\ccMethod{bool are_equal(const Facet & f, Cell_handle n, int j) const;}
{For these three methods: \ccPrecond{\ccVar.dimension()==3}.}
\ccHeading{Point location}
\ccThree{Vertex_handle}{t.locate()toto}{}
@ -847,8 +880,8 @@ cells.
\ccSeeAlso
\ccc{CGAL::Triangulation_vertex_3<Triangulation_traits_3,Tds_3>},\\
\ccc{CGAL::Triangulation_cell_3<Triangulation_traits_3,Tds_3>}.
\ccc{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>::Vertex},\\
\ccc{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>::Cell}.
%\ccExample

View File

@ -11,7 +11,7 @@
% +------------------------------------------------------------------------+
\begin{ccRefClass}{Triangulation_cell_3<Triangulation_traits_3,Tds_3>} %% add template arg's if necessary
\begin{ccRefClass}[Triangulation_3<Triangulation_traits_3,Tds_3>::]{Cell} %% add template arg's if necessary
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[class]{} %% add further index entries
@ -34,7 +34,7 @@ dimension: (Section~\ref{Triangulation3-sec-degen_dim}).
\ccTypes
The class \ccRefName\ defines the same types as the
\ccc{Triangulation_vertex_3<Triangulation_traits_3,Tds_3>} class.
\ccc{Triangulation_3<Triangulation_traits_3,Tds_3>::Vertex} class.
\ccCreationVariable{c} %% choose variable name
\begin{ccAdvanced}
@ -150,7 +150,7 @@ computes the index \ccc{i} of the neighbor.}
\ccSeeAlso
\ccc{CGAL::Triangulation_vertex_3<Triangulation_traits_3,Tds_3>}.
\ccc{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>::Vertex}.
%% \ccExample

View File

@ -11,14 +11,15 @@
% +------------------------------------------------------------------------+
\begin{ccRefEnum}[Triangulation_3::]{Locate_type} %% add template arg's if necessary
\begin{ccRefEnum}[Triangulation_3<Triangulation_traits_3,Tds_3>::]{Locate_type} %% add template arg's if necessary
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[enum]{} %% add further index entries
\ccDefinition
The enum \ccRefName\ is defined by the \ccc{Triangulation_3} class to specify
The enum \ccRefName\ is defined by the
\ccc{Triangulation_3<Triangulation_traits_3,Tds_3>} class to specify
which case occurs when locating a point in the triangulation.
\ccEnum{enum Locate_type {VERTEX=0, EDGE, FACET, CELL, OUTSIDE_CONVEX_HULL,

View File

@ -11,7 +11,7 @@
% +------------------------------------------------------------------------+
\begin{ccRefClass}{Triangulation_vertex_3<Triangulation_traits_3,Tds_3>} %% add template arg's if necessary
\begin{ccRefClass}[Triangulation_3<Triangulation_traits_3,Tds_3>::]{Vertex} %% add template arg's if necessary
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[class]{} %% add further index entries
@ -27,8 +27,6 @@ maximal dimension.
\ccInheritsFrom
\ccc{Tds_3::Vertex}
\ccTypes
\ccTypes
\ccThree{typedef triple <Cell*, int, int>}{Facettoto}{}
The class \ccClassTemplateName\ defines the following types, also
@ -109,6 +107,8 @@ of maximal dimension (Section~\ref{Triangulation3-sec-degen_dim}).}
\ccSeeAlso
\ccc{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>::Cell}.
\ccExample

View File

@ -24,9 +24,9 @@ It must fulfill the following requirements:
\ccTypes
\ccThree{typedef Point::RT}{RTxxxx}{}
\ccNestedType{Point Point}{The point type}
\ccNestedType{Point}{The point type}
\ccGlue
\ccNestedType{Weight Weight}{The weight type}
\ccNestedType{Weight}{The weight type}
\ccGlue
\ccTypedef{typedef Point::RT RT;}{The ring type}

View File

@ -70,8 +70,8 @@ vertices indexed 0, 1, 2, and 3 in positive orientation and to its
four adjacent cells, also called neighbors. The neighbors are indexed
in such a way that neighbor $i$ lies opposite to vertex $i$.
\ccRefIdfierPage{CGAL::Triangulation_vertex_3<Triangulation_traits_3,Tds_3>}\\
\ccRefIdfierPage{CGAL::Triangulation_cell_3<Triangulation_traits_3,Tds_3>}
\ccRefIdfierPage{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>::Vertex}\\
\ccRefIdfierPage{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>::Cell}
\subsubsection*{Traits classes}
@ -87,6 +87,6 @@ a cell of a triangulation.
\subsection*{Enums}
\ccRefIdfierPage{CGAL::Triangulation_3::Locate_type}
\ccRefIdfierPage{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>::Locate_type}
%% EOF %%

View File

@ -56,7 +56,8 @@ The second template parameter of the basic triangulation class
data structure class. (See Chapter~\ref{chapter-TDS3}.)
To ensure all the \textbf{flexibility} of class \ccc{Triangulation_3}
described in \ccRefPage{Triangulation_3<Triangulation_traits_3,Tds_3>}
described in
\ccRefPage{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>}
and in Chapter~\ref{chapter-Triangulation3}, a model of a
triangulation data structure must be templated by the base vertex and
the base cell classes (see~\ref{TDS3-sec-intro}):
@ -78,7 +79,7 @@ operations.
\ccGlue
\ccNestedType{Cell}{Cell type}
Requirements for \ccc{Vertex} and \ccc{Cell} are described in
\ccRefPage{Tds_vertex_3} and \ccRefPage{Tds_cell_3}.
\ccRefPage{Tds_3::Vertex} and \ccRefPage{Tds_3::Cell}.
\ccTypedef{typedef triple<Cell*, int, int> Edge;}{\ccc{(c,i,j)} is the
edge of cell \ccc{c} whose vertices indices are \ccc{i} and
@ -208,6 +209,37 @@ this order.}
and \ccc{l} of the vertices \ccc{u}, \ccc{v}, \ccc{w} and \ccc{t} in
\ccc{c}, in this order.}
There is a method \ccc{has_vertex} in the cell class. The analogous
methods for facets are defined here.
\ccMethod{bool has_vertex(const Facet & f, Vertex* v, int & j) const;}
{If \ccc{v} is a vertex of \ccc{f}, then \ccc{j} is the index of
\ccc{v} in the cell \ccc{f.first}, and the method returns \ccc{true}.
\ccPrecond{\ccVar.dimension()==3}}
\ccGlue
\ccMethod{bool has_vertex(Cell* c, int i, Vertex* v, int & j) const;}
{Same for facet \ccc{(c,i)}. Computes the index \ccc{j} of \ccc{v} in
\ccc{c}.}
\ccGlue
\ccMethod{bool has_vertex(const Facet & f, Vertex* v) const;}
{}
\ccGlue
\ccMethod{bool has_vertex(Cell* c, int i, Vertex* v) const;}
{Same as the first two methods, but these two methods do not return the
index of the vertex.}
The following three methods test whether two facets have the same
vertices.
\ccMethod{bool are_equal(const Facet & f, const Facet & g) const;}
{}
\ccGlue
\ccMethod{bool are_equal(Cell* c, int i, Cell* n, int j) const;}
{}
\ccGlue
\ccMethod{bool are_equal(const Facet & f, Cell* n, int j) const;}
{For these three methods: \ccPrecond{\ccVar.dimension()==3}.}
\ccHeading{Flips}
Two kinds of flips exist for a three-dimensional triangulation. They
@ -526,8 +558,8 @@ for faces of maximal dimension instead of cells.
\ccSeeAlso
\ccc{Tds_vertex_3},\\
\ccc{Tds_cell_3}.
\ccc{Tds_3::Vertex},\\
\ccc{Tds_3::Cell}.
\end{ccRefConcept}

View File

@ -11,7 +11,7 @@
% +------------------------------------------------------------------------+
\begin{ccRefConcept}{Tds_cell_3}
\begin{ccRefConcept}{Tds_3::Cell}
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[concept]{} %% add further index entries
@ -34,9 +34,9 @@ Section~\ref{TDS3-sec-degen_dim}.)
\ccThreeToTwo
The class \ccClassName\ defines the following types.
\ccTypedef{typedef Tds::Vertex Vertex;}{}
\ccTypedef{typedef Tds_3::Vertex Vertex;}{}
\ccGlue
\ccTypedef{typedef Tds::Cell Cell;}{}
\ccTypedef{typedef Tds_3::Cell Cell;}{}
\ccCreation
\ccCreationVariable{c} %% choose variable name
@ -140,13 +140,13 @@ The validity of the base cell is also checked.\\
When \ccc{verbose} is set to \ccc{true}, messages are printed to give
a precise indication of the kind of invalidity encountered.}
\ccHasModels
%\ccHasModels
\ccc{Triangulation_ds_cell_3}.
%\ccc{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Cell}.
\ccSeeAlso
\ccc{Tds_vertex_3}.
\ccc{Tds_3::Vertex}.
%% \ccExample

View File

@ -11,7 +11,7 @@
% +------------------------------------------------------------------------+
\begin{ccRefConcept}{Tds_vertex_3}
\begin{ccRefConcept}{Tds_3::Vertex}
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[concept]{} %% add further index entries
@ -34,9 +34,9 @@ structure alone.}}
The class \ccClassName\ defines types that are the same as some of the
types defined by the triangulation data structure class \ccc{Tds}.
\ccTypedef{typedef Tds::Vertex Vertex;}{}
\ccTypedef{typedef Tds_3::Vertex Vertex;}{}
\ccGlue
\ccTypedef{typedef Tds::Cell Cell;}{}
\ccTypedef{typedef Tds_3::Cell Cell;}{}
\ccCreation
\ccCreationVariable{v} %% choose variable name
@ -88,13 +88,13 @@ When \ccc{verbose} is set to \ccc{true}, messages are printed to give
a precise indication on the kind of invalidity encountered.}
\end{ccAdvanced}
\ccHasModels
%\ccHasModels
\ccc{CGAL::Triangulation_ds_vertex_3}.
%\ccc{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Vertex}.
\ccSeeAlso
\ccc{Tds_cell_3}.
\ccc{Tds_3::Cell}.
%% \ccExample

View File

@ -38,8 +38,8 @@ indices of vertices and neighbors of cells.
\ccSeeAlso
\ccc{CGAL::Triangulation_ds_vertex_3},\\
\ccc{CGAL::Triangulation_ds_cell_3},\\
%\ccc{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Vertex},\\
%\ccc{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Cell},\\
\ccc{Triangulation_vb_3},\\
\ccc{Triangulation_cb_3}.

View File

@ -11,7 +11,7 @@
% +------------------------------------------------------------------------+
\begin{ccRefClass}{Triangulation_ds_cell_3} %% add template arg's if necessary
\begin{ccRefClass}{Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Cell} %% add template arg's if necessary
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[class]{} %% add further index entries
@ -28,7 +28,7 @@ The class \ccRefName\ stores a cell of a 3D-triangulation data structure.
\ccSeeAlso
\ccc{CGAL::Triangulation_ds_vertex_3}.
\ccc{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Vertex}
%% \ccExample

View File

@ -11,7 +11,7 @@
% +------------------------------------------------------------------------+
\begin{ccRefClass}{Triangulation_ds_vertex_3} %% add template arg's if necessary
\begin{ccRefClass}{Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Vertex} %% add template arg's if necessary
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[class]{} %% add further index entries
@ -28,7 +28,7 @@ The class \ccRefName\ stores the vertices of a 3D-triangulation data structure.
\ccSeeAlso
\ccc{CGAL::Triangulation_ds_cell_3}.
\ccc{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Cell}
%% \ccExample

View File

@ -39,8 +39,8 @@ Section~\ref{TDS3-sec-degen_dim}.)
%\ccRefIdfierPage{Tds_3<Triangulation_vb_3,Triangulation_cb_3>}
\ccRefIdfierPage{Tds_3}
\ccRefIdfierPage{Tds_vertex_3}\\
\ccRefIdfierPage{Tds_cell_3}
\ccRefIdfierPage{Tds_3::Vertex}\\
\ccRefIdfierPage{Tds_3::Cell}
\ccRefIdfierPage{Triangulation_vb_3}\\
\ccRefIdfierPage{Triangulation_cb_3}
@ -53,8 +53,8 @@ This class is a model for the concept of the 3D-triangulation data
structure \ccc{Tds_3} and provides the optional geometric
functionalities. It is templated by base classes for vertices and cells.
\ccRefIdfierPage{CGAL::Triangulation_ds_vertex_3}\\
\ccRefIdfierPage{CGAL::Triangulation_ds_cell_3}
%\ccRefIdfierPage{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Vertex}\\
%\ccRefIdfierPage{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Cell}
\cgal\ provides two base vertex classes and one base cell class:

View File

@ -13,8 +13,8 @@
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_cb_3.tex}
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_cell_base_3.tex}
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_data_structure_3.tex}
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_ds_cell_3.tex}
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_ds_vertex_3.tex}
%\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_ds_cell_3.tex}
%\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_ds_vertex_3.tex}
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_vb_3.tex}
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_vertex_base_3.tex}
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_vertex_base_pointer_3.tex}

View File

@ -296,6 +296,39 @@ order.
\ccPrecond{\ccc{u}, \ccc{v}, \ccc{w} and \ccc{x} are vertices of \ccVar.}\\
\textit{not yet implemented}}
There is a method \ccc{has_vertex} in the cell class. The analogous
methods for facets are defined here.
\ccMethod{bool has_vertex(const Facet & f, Vertex_handle v, int & j) const;}
{If \ccc{v} is a vertex of \ccc{f}, then \ccc{j} is the index of
\ccc{v} in the cell \ccc{f.first}, and the method returns \ccc{true}.
\ccPrecond{\ccVar.dimension()==3}}
\ccGlue
\ccMethod{bool has_vertex(Cell_handle c, int i,
Vertex_handle v, int & j) const;}
{Same for facet \ccc{(c,i)}. Computes the index \ccc{j} of \ccc{v} in
\ccc{c}.}
\ccGlue
\ccMethod{bool has_vertex(const Facet & f, Vertex_handle v) const;}
{}
\ccGlue
\ccMethod{bool has_vertex(Cell_handle c, int i, Vertex_handle v) const;}
{Same as the first two methods, but these two methods do not return the
index of the vertex.}
The following three methods test whether two facets have the same
vertices.
\ccMethod{bool are_equal(Cell_handle c, int i, Cell_handle n, int j) const;}
{}
\ccGlue
\ccMethod{bool are_equal(const Facet & f, const Facet & g) const;}
{}
\ccGlue
\ccMethod{bool are_equal(const Facet & f, Cell_handle n, int j) const;}
{For these three methods: \ccPrecond{\ccVar.dimension()==3}.}
\ccHeading{Point location}
\ccThree{Vertex_handle}{t.locate()toto}{}
@ -847,8 +880,8 @@ cells.
\ccSeeAlso
\ccc{CGAL::Triangulation_vertex_3<Triangulation_traits_3,Tds_3>},\\
\ccc{CGAL::Triangulation_cell_3<Triangulation_traits_3,Tds_3>}.
\ccc{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>::Vertex},\\
\ccc{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>::Cell}.
%\ccExample

View File

@ -11,7 +11,7 @@
% +------------------------------------------------------------------------+
\begin{ccRefClass}{Triangulation_cell_3<Triangulation_traits_3,Tds_3>} %% add template arg's if necessary
\begin{ccRefClass}[Triangulation_3<Triangulation_traits_3,Tds_3>::]{Cell} %% add template arg's if necessary
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[class]{} %% add further index entries
@ -34,7 +34,7 @@ dimension: (Section~\ref{Triangulation3-sec-degen_dim}).
\ccTypes
The class \ccRefName\ defines the same types as the
\ccc{Triangulation_vertex_3<Triangulation_traits_3,Tds_3>} class.
\ccc{Triangulation_3<Triangulation_traits_3,Tds_3>::Vertex} class.
\ccCreationVariable{c} %% choose variable name
\begin{ccAdvanced}
@ -150,7 +150,7 @@ computes the index \ccc{i} of the neighbor.}
\ccSeeAlso
\ccc{CGAL::Triangulation_vertex_3<Triangulation_traits_3,Tds_3>}.
\ccc{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>::Vertex}.
%% \ccExample

View File

@ -11,14 +11,15 @@
% +------------------------------------------------------------------------+
\begin{ccRefEnum}[Triangulation_3::]{Locate_type} %% add template arg's if necessary
\begin{ccRefEnum}[Triangulation_3<Triangulation_traits_3,Tds_3>::]{Locate_type} %% add template arg's if necessary
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[enum]{} %% add further index entries
\ccDefinition
The enum \ccRefName\ is defined by the \ccc{Triangulation_3} class to specify
The enum \ccRefName\ is defined by the
\ccc{Triangulation_3<Triangulation_traits_3,Tds_3>} class to specify
which case occurs when locating a point in the triangulation.
\ccEnum{enum Locate_type {VERTEX=0, EDGE, FACET, CELL, OUTSIDE_CONVEX_HULL,

View File

@ -11,7 +11,7 @@
% +------------------------------------------------------------------------+
\begin{ccRefClass}{Triangulation_vertex_3<Triangulation_traits_3,Tds_3>} %% add template arg's if necessary
\begin{ccRefClass}[Triangulation_3<Triangulation_traits_3,Tds_3>::]{Vertex} %% add template arg's if necessary
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[class]{} %% add further index entries
@ -27,8 +27,6 @@ maximal dimension.
\ccInheritsFrom
\ccc{Tds_3::Vertex}
\ccTypes
\ccTypes
\ccThree{typedef triple <Cell*, int, int>}{Facettoto}{}
The class \ccClassTemplateName\ defines the following types, also
@ -109,6 +107,8 @@ of maximal dimension (Section~\ref{Triangulation3-sec-degen_dim}).}
\ccSeeAlso
\ccc{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>::Cell}.
\ccExample

View File

@ -24,9 +24,9 @@ It must fulfill the following requirements:
\ccTypes
\ccThree{typedef Point::RT}{RTxxxx}{}
\ccNestedType{Point Point}{The point type}
\ccNestedType{Point}{The point type}
\ccGlue
\ccNestedType{Weight Weight}{The weight type}
\ccNestedType{Weight}{The weight type}
\ccGlue
\ccTypedef{typedef Point::RT RT;}{The ring type}

View File

@ -70,8 +70,8 @@ vertices indexed 0, 1, 2, and 3 in positive orientation and to its
four adjacent cells, also called neighbors. The neighbors are indexed
in such a way that neighbor $i$ lies opposite to vertex $i$.
\ccRefIdfierPage{CGAL::Triangulation_vertex_3<Triangulation_traits_3,Tds_3>}\\
\ccRefIdfierPage{CGAL::Triangulation_cell_3<Triangulation_traits_3,Tds_3>}
\ccRefIdfierPage{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>::Vertex}\\
\ccRefIdfierPage{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>::Cell}
\subsubsection*{Traits classes}
@ -87,6 +87,6 @@ a cell of a triangulation.
\subsection*{Enums}
\ccRefIdfierPage{CGAL::Triangulation_3::Locate_type}
\ccRefIdfierPage{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>::Locate_type}
%% EOF %%

View File

@ -56,7 +56,8 @@ The second template parameter of the basic triangulation class
data structure class. (See Chapter~\ref{chapter-TDS3}.)
To ensure all the \textbf{flexibility} of class \ccc{Triangulation_3}
described in \ccRefPage{Triangulation_3<Triangulation_traits_3,Tds_3>}
described in
\ccRefPage{CGAL::Triangulation_3<Triangulation_traits_3,Tds_3>}
and in Chapter~\ref{chapter-Triangulation3}, a model of a
triangulation data structure must be templated by the base vertex and
the base cell classes (see~\ref{TDS3-sec-intro}):
@ -78,7 +79,7 @@ operations.
\ccGlue
\ccNestedType{Cell}{Cell type}
Requirements for \ccc{Vertex} and \ccc{Cell} are described in
\ccRefPage{Tds_vertex_3} and \ccRefPage{Tds_cell_3}.
\ccRefPage{Tds_3::Vertex} and \ccRefPage{Tds_3::Cell}.
\ccTypedef{typedef triple<Cell*, int, int> Edge;}{\ccc{(c,i,j)} is the
edge of cell \ccc{c} whose vertices indices are \ccc{i} and
@ -208,6 +209,37 @@ this order.}
and \ccc{l} of the vertices \ccc{u}, \ccc{v}, \ccc{w} and \ccc{t} in
\ccc{c}, in this order.}
There is a method \ccc{has_vertex} in the cell class. The analogous
methods for facets are defined here.
\ccMethod{bool has_vertex(const Facet & f, Vertex* v, int & j) const;}
{If \ccc{v} is a vertex of \ccc{f}, then \ccc{j} is the index of
\ccc{v} in the cell \ccc{f.first}, and the method returns \ccc{true}.
\ccPrecond{\ccVar.dimension()==3}}
\ccGlue
\ccMethod{bool has_vertex(Cell* c, int i, Vertex* v, int & j) const;}
{Same for facet \ccc{(c,i)}. Computes the index \ccc{j} of \ccc{v} in
\ccc{c}.}
\ccGlue
\ccMethod{bool has_vertex(const Facet & f, Vertex* v) const;}
{}
\ccGlue
\ccMethod{bool has_vertex(Cell* c, int i, Vertex* v) const;}
{Same as the first two methods, but these two methods do not return the
index of the vertex.}
The following three methods test whether two facets have the same
vertices.
\ccMethod{bool are_equal(const Facet & f, const Facet & g) const;}
{}
\ccGlue
\ccMethod{bool are_equal(Cell* c, int i, Cell* n, int j) const;}
{}
\ccGlue
\ccMethod{bool are_equal(const Facet & f, Cell* n, int j) const;}
{For these three methods: \ccPrecond{\ccVar.dimension()==3}.}
\ccHeading{Flips}
Two kinds of flips exist for a three-dimensional triangulation. They
@ -526,8 +558,8 @@ for faces of maximal dimension instead of cells.
\ccSeeAlso
\ccc{Tds_vertex_3},\\
\ccc{Tds_cell_3}.
\ccc{Tds_3::Vertex},\\
\ccc{Tds_3::Cell}.
\end{ccRefConcept}

View File

@ -11,7 +11,7 @@
% +------------------------------------------------------------------------+
\begin{ccRefConcept}{Tds_cell_3}
\begin{ccRefConcept}{Tds_3::Cell}
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[concept]{} %% add further index entries
@ -34,9 +34,9 @@ Section~\ref{TDS3-sec-degen_dim}.)
\ccThreeToTwo
The class \ccClassName\ defines the following types.
\ccTypedef{typedef Tds::Vertex Vertex;}{}
\ccTypedef{typedef Tds_3::Vertex Vertex;}{}
\ccGlue
\ccTypedef{typedef Tds::Cell Cell;}{}
\ccTypedef{typedef Tds_3::Cell Cell;}{}
\ccCreation
\ccCreationVariable{c} %% choose variable name
@ -140,13 +140,13 @@ The validity of the base cell is also checked.\\
When \ccc{verbose} is set to \ccc{true}, messages are printed to give
a precise indication of the kind of invalidity encountered.}
\ccHasModels
%\ccHasModels
\ccc{Triangulation_ds_cell_3}.
%\ccc{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Cell}.
\ccSeeAlso
\ccc{Tds_vertex_3}.
\ccc{Tds_3::Vertex}.
%% \ccExample

View File

@ -11,7 +11,7 @@
% +------------------------------------------------------------------------+
\begin{ccRefConcept}{Tds_vertex_3}
\begin{ccRefConcept}{Tds_3::Vertex}
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[concept]{} %% add further index entries
@ -34,9 +34,9 @@ structure alone.}}
The class \ccClassName\ defines types that are the same as some of the
types defined by the triangulation data structure class \ccc{Tds}.
\ccTypedef{typedef Tds::Vertex Vertex;}{}
\ccTypedef{typedef Tds_3::Vertex Vertex;}{}
\ccGlue
\ccTypedef{typedef Tds::Cell Cell;}{}
\ccTypedef{typedef Tds_3::Cell Cell;}{}
\ccCreation
\ccCreationVariable{v} %% choose variable name
@ -88,13 +88,13 @@ When \ccc{verbose} is set to \ccc{true}, messages are printed to give
a precise indication on the kind of invalidity encountered.}
\end{ccAdvanced}
\ccHasModels
%\ccHasModels
\ccc{CGAL::Triangulation_ds_vertex_3}.
%\ccc{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Vertex}.
\ccSeeAlso
\ccc{Tds_cell_3}.
\ccc{Tds_3::Cell}.
%% \ccExample

View File

@ -38,8 +38,8 @@ indices of vertices and neighbors of cells.
\ccSeeAlso
\ccc{CGAL::Triangulation_ds_vertex_3},\\
\ccc{CGAL::Triangulation_ds_cell_3},\\
%\ccc{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Vertex},\\
%\ccc{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Cell},\\
\ccc{Triangulation_vb_3},\\
\ccc{Triangulation_cb_3}.

View File

@ -11,7 +11,7 @@
% +------------------------------------------------------------------------+
\begin{ccRefClass}{Triangulation_ds_cell_3} %% add template arg's if necessary
\begin{ccRefClass}{Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Cell} %% add template arg's if necessary
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[class]{} %% add further index entries
@ -28,7 +28,7 @@ The class \ccRefName\ stores a cell of a 3D-triangulation data structure.
\ccSeeAlso
\ccc{CGAL::Triangulation_ds_vertex_3}.
\ccc{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Vertex}
%% \ccExample

View File

@ -11,7 +11,7 @@
% +------------------------------------------------------------------------+
\begin{ccRefClass}{Triangulation_ds_vertex_3} %% add template arg's if necessary
\begin{ccRefClass}{Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Vertex} %% add template arg's if necessary
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
%% \ccHtmlIndexC[class]{} %% add further index entries
@ -28,7 +28,7 @@ The class \ccRefName\ stores the vertices of a 3D-triangulation data structure.
\ccSeeAlso
\ccc{CGAL::Triangulation_ds_cell_3}.
\ccc{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Cell}
%% \ccExample

View File

@ -39,8 +39,8 @@ Section~\ref{TDS3-sec-degen_dim}.)
%\ccRefIdfierPage{Tds_3<Triangulation_vb_3,Triangulation_cb_3>}
\ccRefIdfierPage{Tds_3}
\ccRefIdfierPage{Tds_vertex_3}\\
\ccRefIdfierPage{Tds_cell_3}
\ccRefIdfierPage{Tds_3::Vertex}\\
\ccRefIdfierPage{Tds_3::Cell}
\ccRefIdfierPage{Triangulation_vb_3}\\
\ccRefIdfierPage{Triangulation_cb_3}
@ -53,8 +53,8 @@ This class is a model for the concept of the 3D-triangulation data
structure \ccc{Tds_3} and provides the optional geometric
functionalities. It is templated by base classes for vertices and cells.
\ccRefIdfierPage{CGAL::Triangulation_ds_vertex_3}\\
\ccRefIdfierPage{CGAL::Triangulation_ds_cell_3}
%\ccRefIdfierPage{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Vertex}\\
%\ccRefIdfierPage{CGAL::Triangulation_data_structure_3<Triangulation_vb_3,Triangulation_cb_3>::Cell}
\cgal\ provides two base vertex classes and one base cell class:

View File

@ -13,8 +13,8 @@
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_cb_3.tex}
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_cell_base_3.tex}
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_data_structure_3.tex}
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_ds_cell_3.tex}
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_ds_vertex_3.tex}
%\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_ds_cell_3.tex}
%\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_ds_vertex_3.tex}
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_vb_3.tex}
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_vertex_base_3.tex}
\input{Triangulation3_ref/Triangulation_data_structure/Triangulation_vertex_base_pointer_3.tex}