diff --git a/Packages/Triangulation_3/Makefile b/Packages/Triangulation_3/Makefile index 7bf351f8048..071d76eec46 100644 --- a/Packages/Triangulation_3/Makefile +++ b/Packages/Triangulation_3/Makefile @@ -1,9 +1,9 @@ # Makefile for CGAL's Triangulation3 package. -Package=Triangulation3 +Package=Triangulation_3 TEXINPUTS=.:../../../examples:/0/prisme_util/latex: -LATEX_CONV_INPUTS=.:../../../examples:/0/prisme/teillaud/CGAL/Triangulation3/examples +LATEX_CONV_INPUTS=.:../../../examples:/0/prisme/teillaud/CGAL/Triangulation_3/examples .PHONY: doc package test diff --git a/Packages/Triangulation_3/doc_tex/Triangulation_3/Makefile b/Packages/Triangulation_3/doc_tex/Triangulation_3/Makefile index 3480701e841..f72ffd10bf3 100644 --- a/Packages/Triangulation_3/doc_tex/Triangulation_3/Makefile +++ b/Packages/Triangulation_3/doc_tex/Triangulation_3/Makefile @@ -1,9 +1,9 @@ .PHONY: dvi ps -ps: Triangulation3.ps +ps: Triangulation_3.ps -Triangulation3.ps: wrapper.dvi - dvips -o Triangulation3.ps wrapper.dvi +Triangulation_3.ps: wrapper.dvi + dvips -o Triangulation_3.ps wrapper.dvi dvi: wrapper.dvi diff --git a/Packages/Triangulation_3/doc_tex/Triangulation_3/TDS3.tex b/Packages/Triangulation_3/doc_tex/Triangulation_3/TDS3.tex index 2931e1ad2c8..8260f131d81 100644 --- a/Packages/Triangulation_3/doc_tex/Triangulation_3/TDS3.tex +++ b/Packages/Triangulation_3/doc_tex/Triangulation_3/TDS3.tex @@ -295,11 +295,11 @@ data structure class is one of the template parameters of the geometric triangulation class. The user may choose to replace the \cgal\ triangulation data structure class by his own triangulation data structure. In this case, his class has to be a model of the -concept described in \ccRefPage{Tds_3}. +concept described in \ccRefPage{TriangulationDataStructure_3}. \section{Examples} \label{TDS3-sec-examples} The following example shows how to construct a 3D triangulation data structure by inserting vertices. -\ccIncludeExampleCode{Triangulation3/example_tds.C} \ No newline at end of file +\ccIncludeExampleCode{Triangulation_3/example_tds.C} \ No newline at end of file diff --git a/Packages/Triangulation_3/doc_tex/Triangulation_3/Triang3.tex b/Packages/Triangulation_3/doc_tex/Triangulation_3/Triang3.tex index b161dfb1995..c278dcac66c 100644 --- a/Packages/Triangulation_3/doc_tex/Triangulation_3/Triang3.tex +++ b/Packages/Triangulation_3/doc_tex/Triangulation_3/Triang3.tex @@ -35,8 +35,7 @@ \subsection{Definition} \label{Triangulation3-sec-def} A three-dimensional triangulation is a three-dimensional simplicial -complex, pure connected and without singularities. (See -\cite{by-ag-98} or Chapter~\ref{I1_Chapter_Triangulations}.) Its +complex, pure connected and without singularities \cite{by-ag-98}. Its cells ($3$-faces) are such that two cells either do not intersect or share a common facet ($2$-face), edge ($1$-face) or vertex ($0$-face). @@ -55,7 +54,7 @@ fourth vertex an auxiliary vertex called the \ccc{infinite vertex}. In that way, each facet is incident to exactly two cells and special cases at the boundary of the convex hull are simple to deal with. -The class \ccc{Triangulation_3} of \cgal\ implements this +The class \ccc{Triangulation_3} of \cgal\ implements this point of view and therefore considers the triangulation of the set of points as a set of finite and infinite tetrahedra. Notice that the infinite vertex has no significant coordinates and that no @@ -102,7 +101,7 @@ endpoints are the vertices of \ccc{c} with indices \ccc{i} and \subsection{Degenerate Dimensions} \label{Triangulation3-sec-degen_dim} -The class \ccc{Triangulation_3} can also deal with +The class \ccc{Triangulation_3} can also deal with triangulations whose dimension is less than~3. A triangulation of a set of points in $\R^d$ covers the whole space $\R^d$ and consists of cells having $d+1$ vertices: some of them are infinite, they are @@ -164,7 +163,7 @@ sufficient for practical cases. \section{Software Design} \label{Triangulation3-sec-design} -The class \ccc{Triangulation_3} is +The class \ccc{Triangulation_3} is designed to be used as a layer upon a 3D-triangulation data structure as presented in Section~\ref{TDS3-sec-design} of Chapter~\ref{chapter-TDS3}. @@ -176,38 +175,44 @@ the geometric validity. This class is parameterized by two classes: specify the type of points to use as well as the elementary operations on them (predicates,\ldots). The concept of such a class is introduced in Section~\ref{Triangulation3-sec-Traits}\lcTex{ and described in -\ccRefPage{Triangulation_traits_3}} and a -model is provided by \cgal\ -(see \ccc{CGAL::Triangulation_geom_traits_3}\lcTex{ -(\ccRefPage{CGAL::Triangulation_geom_traits_3})} and -\ccc{CGAL::Regular_triangulation_euclidean_traits_3}\lcTex{ -(\ccRefPage{CGAL::Regular_triangulation_euclidean_traits_3})}. +\ccRefPage{TriangulationTraits_3}} and the homegeneous and cartesian +kernels of \cgal\ are models for this concept +(see also \ccc{CGAL::Regular_triangulation_euclidean_traits_3}\lcTex{ +(\ccRefPage{CGAL::Regular_triangulation_euclidean_traits_3})} +for the Regular triangulation). \item {} the \textbf{triangulation data structure} class of the middle level, described in Chapter~\ref{chapter-TDS3}. \end{itemize} Delaunay triangulations as well as triangulation hierarchies \cite{d-iirdt-98} are also implemented in the package: -\ccc{Delaunay_triangulation_3} inherits from -\ccc{Triangulation_3}, and +\ccc{Delaunay_triangulation_3} +inherits from +\ccc{Triangulation_3}, and \ccc{Triangulation_hierarchy_3} inherits from \ccc{Tr}. -\ccc{Triangulation_3} derives from -\ccc{Triangulation_utils_3}, +\ccc{Triangulation_3} derives from +\ccc{Triangulation_utils_3}, which defines a set of tools working on the indices of vertices in cells\lcTex{ (\ccRefPage{CGAL::Triangulation_utils_3})}. \subsection{Basic Triangulation} -\ccc{Triangulation_3} expects a model of a +\ccc{Triangulation_3} expects a model of a \textit{geometric traits class} as its first template argument and a model of a \textit{triangulation data structure} as its second argument. The requirements and defaults for these classes are described in -the reference pages for Triangulation\_traits\_3\lcTex{ ( -\ccRefPage{Triangulation_traits_3})}, -\ccc{CGAL::Triangulation_geom_traits_3}\lcTex{ -(\ccRefPage{CGAL::Triangulation_geom_traits_3})} and +the reference pages for +\ccc{TriangulationTraits_3}\lcTex{ +(\ccRefPage{TriangulationTraits_3})}, +\ccc{DelaunayTriangulationTraits_3}\lcTex{ +(\ccRefPage{DelaunayTriangulationTraits_3})}, +\ccc{TriangulationHierarchyTraits_3}\lcTex{ +(\ccRefPage{TriangulationHierarchyTraits_3})} + \ccc{RegularTriangulationTraits_3}\lcTex{ +(\ccRefPage{RegularTriangulationTraits_3})}, +and \ccc{CGAL::Regular_triangulation_euclidean_traits_3}\lcTex{ (\ccRefPage{CGAL::Regular_triangulation_euclidean_traits_3})}. @@ -242,7 +247,7 @@ the reference pages for Triangulation\_traits\_3\lcTex{ ( \subsection{Delaunay Triangulation} -The class \ccc{Delaunay_triangulation_3} +The class \ccc{Delaunay_triangulation_3} represents a three-dimensional Delaunay triangulation. \subsection{Triangulation hierarchy} @@ -269,7 +274,7 @@ by one of the \cgal\ triangulation classes. \subsection{Regular Triangulation} \label{Triangulation3-sec-class-Regulartriangulation} -\ccc{Regular_triangulation_3} implements +\ccc{Regular_triangulation_3} implements regular triangulations. Let ${S}^{(w)}$ be a set of weighted points in $\R^3$. Let @@ -387,7 +392,7 @@ point $p\in\R^3$ or the weighted point ${p}^{(w)}=(p,w_p)$. \label{Triangulation3-sec-Traits} The first template parameter of the triangulation class -\ccc{Triangulation_3} of \cgal\ is the geometric traits class. +\ccc{Triangulation_3} of \cgal\ is the geometric traits class. The geometric traits class must define the geometric objects (points, segments, triangles and tetrahedra) forming the @@ -399,34 +404,37 @@ In addition to the requirements described before, the geometric traits class of a Delaunay triangulation must define predicates for the \textit{empty sphere property}. +\cgal\ provides two predefined geometric traits classes +\ccc{Cartesian} and \ccc{Homogeneous} using the kernel +geometric objects and predicates. +These classes are templated with a representation class. +They supply the user with all +the functionalities described for the concepts +\ccc{TriangulationTraits_3}\lcTex{ +(\ccRefPage{TriangulationTraits_3})}, +\ccc{DelaunayTriangulationTraits_3}\lcTex{ +(\ccRefPage{DelaunayTriangulationTraits_3})}and +\ccc{TriangulationHierarchyTraits_3}\lcTex{ +(\ccRefPage{TriangulationHierarchyTraits_3})}. +So, any of them can be used as a default traits +class for \ccc{Triangulation_3}, +\ccc{Delaunay_triangulation_3} +and for the parameter \ccc{Tr} of \ccc{TriangulationHierarchy_3}. + To be used as the traits class for the regular triangulation provided by \cgal, a class must provide definitions for the \textit{power tests}. (See Section~\ref{Triangulation3-sec-class-Regulartriangulation}.) - -\cgal\ provides a predefined geometric traits class -\ccc{Triangulation_geom_traits_3} using the kernel -geometric objects and predicates. -This class is templated with a representation class. - -The traits class \ccClassTemplateName\ is designed to deal with \cgal\ -three-dimensional points. It supplies the user with all -the functionalities described for the concept -Triangulation\_traits\_3\lcTex{ (\ccRefPage{Triangulation_traits_3})}. -So, it can be used as a default traits -class for \ccc{Triangulation_3}, -\ccc{Delaunay_triangulation_3}. - \ccc{Regular_triangulation_euclidean_traits_3} is a traits class designed to be used by the class -\ccc{Regular_triangulation_3}. It provides +\ccc{Regular_triangulation_3}. It provides \ccc{Weighted_point}, a class for weighted points provided by the class, which derives from the \cgal\ three dimensional point class. It supplies the user with all the functionalities -described for the concept Triangulation\_traits\_3\lcTex{ -(\ccRefPage{Triangulation_traits_3})}. +described for the concept \ccc{TriangulationTraits_3}\lcTex{ +(\ccRefPage{TriangulationTraits_3})}. It can be used as a default traits -class for \ccc{Regular_triangulation_3}. +class for \ccc{Regular_triangulation_3}. % \subsection{Weighted point} % \label{Triangulation3-sec-class-Weightedpoints} @@ -453,7 +461,7 @@ class for \ccc{Regular_triangulation_3}. \label{Triangulation3-sec-tds} The second template parameter of the basic triangulation class -\ccc{Triangulation_3} is a triangulation +\ccc{Triangulation_3} is a triangulation data structure class. This class can be seen as a container for the cells and vertices maintaining incidence and adjacency relations (see Chapter~\ref{chapter-TDS3}). A model of this triangulation data @@ -466,5 +474,5 @@ This example shows the incremental construction of a 3D triangulation, the location of a point, and how to manipulate elementary operations on indices in a cell. -\ccIncludeExampleCode{Triangulation3/example1.C} +\ccIncludeExampleCode{Triangulation_3/example1.C} diff --git a/Packages/Triangulation_3/doc_tex/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_cell_3.tex b/Packages/Triangulation_3/doc_tex/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_cell_3.tex index 4413762c1aa..b550d1c9b50 100644 --- a/Packages/Triangulation_3/doc_tex/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_cell_3.tex +++ b/Packages/Triangulation_3/doc_tex/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_cell_3.tex @@ -11,7 +11,7 @@ % +------------------------------------------------------------------------+ -\begin{ccRefConcept}[Tds_3::]{Cell} +\begin{ccRefConcept}[TriangulationDataStructure_3::]{Cell} %% \ccHtmlCrossLink{} %% add further rules for cross referencing links %% \ccHtmlIndexC[concept]{} %% add further index entries @@ -34,13 +34,13 @@ Section~\ref{TDS3-sec-degen_dim}.) \ccThreeToTwo The class \ccClassName\ defines the following types. -\ccTypedef{typedef Tds_3::Vertex Vertex;}{} +\ccTypedef{typedef TriangulationDataStructure_3::Vertex Vertex;}{} \ccGlue -\ccTypedef{typedef Tds_3::Cell Cell;}{} +\ccTypedef{typedef TriangulationDataStructure_3::Cell Cell;}{} \ccCreation \ccCreationVariable{c} %% choose variable name -\ccThree{Tds::Vertex}{v(const Point & p, Cell* c);}{} +\ccThree{TriangulationDataStructure::Vertex}{v(const Point & p, Cell* c);}{} The constructors of a cell do not insert it into any triangulation data structure. To add a cell into a given triangulation @@ -146,7 +146,7 @@ a precise indication of the kind of invalidity encountered.} \ccSeeAlso -\ccc{Tds_3::Vertex}. +\ccc{TriangulationDataStructure_3::Vertex}. %% \ccExample diff --git a/Packages/Triangulation_3/doc_tex/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_vertex_3.tex b/Packages/Triangulation_3/doc_tex/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_vertex_3.tex index 1f323261976..5d186a3a011 100644 --- a/Packages/Triangulation_3/doc_tex/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_vertex_3.tex +++ b/Packages/Triangulation_3/doc_tex/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_vertex_3.tex @@ -11,7 +11,7 @@ % +------------------------------------------------------------------------+ -\begin{ccRefConcept}[Tds_3::]{Vertex} +\begin{ccRefConcept}[TriangulationDataStructure_3::]{Vertex} %% \ccHtmlCrossLink{} %% add further rules for cross referencing links %% \ccHtmlIndexC[concept]{} %% add further index entries @@ -32,15 +32,15 @@ for the geometric triangulation class. (See Section~\ref{TDS3-sec-design}.) 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}. +types defined by the triangulation data structure class \ccc{TriangulationDataStructure}. -\ccTypedef{typedef Tds_3::Vertex Vertex;}{} +\ccTypedef{typedef TriangulationDataStructure_3::Vertex Vertex;}{} \ccGlue -\ccTypedef{typedef Tds_3::Cell Cell;}{} +\ccTypedef{typedef TriangulationDataStructure_3::Cell Cell;}{} \ccCreation \ccCreationVariable{v} %% choose variable name -\ccThree{Tds::Vertex}{v(const Point & p, Cell* c);}{} +\ccThree{TriangulationDataStructure::Vertex}{v(const Point & p, Cell* c);}{} \ccConstructor{Vertex();} {Introduces a vertex \ccVar. @@ -60,7 +60,7 @@ triangulation data structure alone.}}} {Introduces a vertex \ccVar, and sets the pointer to the incident cell to \ccc{c}.} -\ccConstructor{Tds_vertex_3();}{default constructor.} +\ccConstructor{Vertex();}{default constructor.} \ccOperations @@ -94,7 +94,7 @@ a precise indication on the kind of invalidity encountered.} \ccSeeAlso -\ccc{Tds_3::Cell}. +\ccc{TriangulationDataStructure_3::Cell}. %% \ccExample diff --git a/Packages/Triangulation_3/doc_tex/Triangulation_3/main.tex b/Packages/Triangulation_3/doc_tex/Triangulation_3/main.tex index b9629686f0d..10623c72b23 100644 --- a/Packages/Triangulation_3/doc_tex/Triangulation_3/main.tex +++ b/Packages/Triangulation_3/doc_tex/Triangulation_3/main.tex @@ -1,5 +1,5 @@ \input{Triang3} -\input{Triangulation3_ref/Triangulation/main.tex} +\input{Triangulation_3_ref/Triangulation_3/main.tex} \input{TDS3} -\input{Triangulation3_ref/Triangulation_data_structure/main.tex} +\input{Triangulation_3_ref/Triangulation_data_structure_3/main.tex} diff --git a/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Makefile b/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Makefile index 3480701e841..f72ffd10bf3 100644 --- a/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Makefile +++ b/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Makefile @@ -1,9 +1,9 @@ .PHONY: dvi ps -ps: Triangulation3.ps +ps: Triangulation_3.ps -Triangulation3.ps: wrapper.dvi - dvips -o Triangulation3.ps wrapper.dvi +Triangulation_3.ps: wrapper.dvi + dvips -o Triangulation_3.ps wrapper.dvi dvi: wrapper.dvi diff --git a/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/TDS3.tex b/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/TDS3.tex index 2931e1ad2c8..8260f131d81 100644 --- a/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/TDS3.tex +++ b/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/TDS3.tex @@ -295,11 +295,11 @@ data structure class is one of the template parameters of the geometric triangulation class. The user may choose to replace the \cgal\ triangulation data structure class by his own triangulation data structure. In this case, his class has to be a model of the -concept described in \ccRefPage{Tds_3}. +concept described in \ccRefPage{TriangulationDataStructure_3}. \section{Examples} \label{TDS3-sec-examples} The following example shows how to construct a 3D triangulation data structure by inserting vertices. -\ccIncludeExampleCode{Triangulation3/example_tds.C} \ No newline at end of file +\ccIncludeExampleCode{Triangulation_3/example_tds.C} \ No newline at end of file diff --git a/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Triang3.tex b/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Triang3.tex index b161dfb1995..c278dcac66c 100644 --- a/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Triang3.tex +++ b/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Triang3.tex @@ -35,8 +35,7 @@ \subsection{Definition} \label{Triangulation3-sec-def} A three-dimensional triangulation is a three-dimensional simplicial -complex, pure connected and without singularities. (See -\cite{by-ag-98} or Chapter~\ref{I1_Chapter_Triangulations}.) Its +complex, pure connected and without singularities \cite{by-ag-98}. Its cells ($3$-faces) are such that two cells either do not intersect or share a common facet ($2$-face), edge ($1$-face) or vertex ($0$-face). @@ -55,7 +54,7 @@ fourth vertex an auxiliary vertex called the \ccc{infinite vertex}. In that way, each facet is incident to exactly two cells and special cases at the boundary of the convex hull are simple to deal with. -The class \ccc{Triangulation_3} of \cgal\ implements this +The class \ccc{Triangulation_3} of \cgal\ implements this point of view and therefore considers the triangulation of the set of points as a set of finite and infinite tetrahedra. Notice that the infinite vertex has no significant coordinates and that no @@ -102,7 +101,7 @@ endpoints are the vertices of \ccc{c} with indices \ccc{i} and \subsection{Degenerate Dimensions} \label{Triangulation3-sec-degen_dim} -The class \ccc{Triangulation_3} can also deal with +The class \ccc{Triangulation_3} can also deal with triangulations whose dimension is less than~3. A triangulation of a set of points in $\R^d$ covers the whole space $\R^d$ and consists of cells having $d+1$ vertices: some of them are infinite, they are @@ -164,7 +163,7 @@ sufficient for practical cases. \section{Software Design} \label{Triangulation3-sec-design} -The class \ccc{Triangulation_3} is +The class \ccc{Triangulation_3} is designed to be used as a layer upon a 3D-triangulation data structure as presented in Section~\ref{TDS3-sec-design} of Chapter~\ref{chapter-TDS3}. @@ -176,38 +175,44 @@ the geometric validity. This class is parameterized by two classes: specify the type of points to use as well as the elementary operations on them (predicates,\ldots). The concept of such a class is introduced in Section~\ref{Triangulation3-sec-Traits}\lcTex{ and described in -\ccRefPage{Triangulation_traits_3}} and a -model is provided by \cgal\ -(see \ccc{CGAL::Triangulation_geom_traits_3}\lcTex{ -(\ccRefPage{CGAL::Triangulation_geom_traits_3})} and -\ccc{CGAL::Regular_triangulation_euclidean_traits_3}\lcTex{ -(\ccRefPage{CGAL::Regular_triangulation_euclidean_traits_3})}. +\ccRefPage{TriangulationTraits_3}} and the homegeneous and cartesian +kernels of \cgal\ are models for this concept +(see also \ccc{CGAL::Regular_triangulation_euclidean_traits_3}\lcTex{ +(\ccRefPage{CGAL::Regular_triangulation_euclidean_traits_3})} +for the Regular triangulation). \item {} the \textbf{triangulation data structure} class of the middle level, described in Chapter~\ref{chapter-TDS3}. \end{itemize} Delaunay triangulations as well as triangulation hierarchies \cite{d-iirdt-98} are also implemented in the package: -\ccc{Delaunay_triangulation_3} inherits from -\ccc{Triangulation_3}, and +\ccc{Delaunay_triangulation_3} +inherits from +\ccc{Triangulation_3}, and \ccc{Triangulation_hierarchy_3} inherits from \ccc{Tr}. -\ccc{Triangulation_3} derives from -\ccc{Triangulation_utils_3}, +\ccc{Triangulation_3} derives from +\ccc{Triangulation_utils_3}, which defines a set of tools working on the indices of vertices in cells\lcTex{ (\ccRefPage{CGAL::Triangulation_utils_3})}. \subsection{Basic Triangulation} -\ccc{Triangulation_3} expects a model of a +\ccc{Triangulation_3} expects a model of a \textit{geometric traits class} as its first template argument and a model of a \textit{triangulation data structure} as its second argument. The requirements and defaults for these classes are described in -the reference pages for Triangulation\_traits\_3\lcTex{ ( -\ccRefPage{Triangulation_traits_3})}, -\ccc{CGAL::Triangulation_geom_traits_3}\lcTex{ -(\ccRefPage{CGAL::Triangulation_geom_traits_3})} and +the reference pages for +\ccc{TriangulationTraits_3}\lcTex{ +(\ccRefPage{TriangulationTraits_3})}, +\ccc{DelaunayTriangulationTraits_3}\lcTex{ +(\ccRefPage{DelaunayTriangulationTraits_3})}, +\ccc{TriangulationHierarchyTraits_3}\lcTex{ +(\ccRefPage{TriangulationHierarchyTraits_3})} + \ccc{RegularTriangulationTraits_3}\lcTex{ +(\ccRefPage{RegularTriangulationTraits_3})}, +and \ccc{CGAL::Regular_triangulation_euclidean_traits_3}\lcTex{ (\ccRefPage{CGAL::Regular_triangulation_euclidean_traits_3})}. @@ -242,7 +247,7 @@ the reference pages for Triangulation\_traits\_3\lcTex{ ( \subsection{Delaunay Triangulation} -The class \ccc{Delaunay_triangulation_3} +The class \ccc{Delaunay_triangulation_3} represents a three-dimensional Delaunay triangulation. \subsection{Triangulation hierarchy} @@ -269,7 +274,7 @@ by one of the \cgal\ triangulation classes. \subsection{Regular Triangulation} \label{Triangulation3-sec-class-Regulartriangulation} -\ccc{Regular_triangulation_3} implements +\ccc{Regular_triangulation_3} implements regular triangulations. Let ${S}^{(w)}$ be a set of weighted points in $\R^3$. Let @@ -387,7 +392,7 @@ point $p\in\R^3$ or the weighted point ${p}^{(w)}=(p,w_p)$. \label{Triangulation3-sec-Traits} The first template parameter of the triangulation class -\ccc{Triangulation_3} of \cgal\ is the geometric traits class. +\ccc{Triangulation_3} of \cgal\ is the geometric traits class. The geometric traits class must define the geometric objects (points, segments, triangles and tetrahedra) forming the @@ -399,34 +404,37 @@ In addition to the requirements described before, the geometric traits class of a Delaunay triangulation must define predicates for the \textit{empty sphere property}. +\cgal\ provides two predefined geometric traits classes +\ccc{Cartesian} and \ccc{Homogeneous} using the kernel +geometric objects and predicates. +These classes are templated with a representation class. +They supply the user with all +the functionalities described for the concepts +\ccc{TriangulationTraits_3}\lcTex{ +(\ccRefPage{TriangulationTraits_3})}, +\ccc{DelaunayTriangulationTraits_3}\lcTex{ +(\ccRefPage{DelaunayTriangulationTraits_3})}and +\ccc{TriangulationHierarchyTraits_3}\lcTex{ +(\ccRefPage{TriangulationHierarchyTraits_3})}. +So, any of them can be used as a default traits +class for \ccc{Triangulation_3}, +\ccc{Delaunay_triangulation_3} +and for the parameter \ccc{Tr} of \ccc{TriangulationHierarchy_3}. + To be used as the traits class for the regular triangulation provided by \cgal, a class must provide definitions for the \textit{power tests}. (See Section~\ref{Triangulation3-sec-class-Regulartriangulation}.) - -\cgal\ provides a predefined geometric traits class -\ccc{Triangulation_geom_traits_3} using the kernel -geometric objects and predicates. -This class is templated with a representation class. - -The traits class \ccClassTemplateName\ is designed to deal with \cgal\ -three-dimensional points. It supplies the user with all -the functionalities described for the concept -Triangulation\_traits\_3\lcTex{ (\ccRefPage{Triangulation_traits_3})}. -So, it can be used as a default traits -class for \ccc{Triangulation_3}, -\ccc{Delaunay_triangulation_3}. - \ccc{Regular_triangulation_euclidean_traits_3} is a traits class designed to be used by the class -\ccc{Regular_triangulation_3}. It provides +\ccc{Regular_triangulation_3}. It provides \ccc{Weighted_point}, a class for weighted points provided by the class, which derives from the \cgal\ three dimensional point class. It supplies the user with all the functionalities -described for the concept Triangulation\_traits\_3\lcTex{ -(\ccRefPage{Triangulation_traits_3})}. +described for the concept \ccc{TriangulationTraits_3}\lcTex{ +(\ccRefPage{TriangulationTraits_3})}. It can be used as a default traits -class for \ccc{Regular_triangulation_3}. +class for \ccc{Regular_triangulation_3}. % \subsection{Weighted point} % \label{Triangulation3-sec-class-Weightedpoints} @@ -453,7 +461,7 @@ class for \ccc{Regular_triangulation_3}. \label{Triangulation3-sec-tds} The second template parameter of the basic triangulation class -\ccc{Triangulation_3} is a triangulation +\ccc{Triangulation_3} is a triangulation data structure class. This class can be seen as a container for the cells and vertices maintaining incidence and adjacency relations (see Chapter~\ref{chapter-TDS3}). A model of this triangulation data @@ -466,5 +474,5 @@ This example shows the incremental construction of a 3D triangulation, the location of a point, and how to manipulate elementary operations on indices in a cell. -\ccIncludeExampleCode{Triangulation3/example1.C} +\ccIncludeExampleCode{Triangulation_3/example1.C} diff --git a/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_cell_3.tex b/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_cell_3.tex index 4413762c1aa..b550d1c9b50 100644 --- a/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_cell_3.tex +++ b/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_cell_3.tex @@ -11,7 +11,7 @@ % +------------------------------------------------------------------------+ -\begin{ccRefConcept}[Tds_3::]{Cell} +\begin{ccRefConcept}[TriangulationDataStructure_3::]{Cell} %% \ccHtmlCrossLink{} %% add further rules for cross referencing links %% \ccHtmlIndexC[concept]{} %% add further index entries @@ -34,13 +34,13 @@ Section~\ref{TDS3-sec-degen_dim}.) \ccThreeToTwo The class \ccClassName\ defines the following types. -\ccTypedef{typedef Tds_3::Vertex Vertex;}{} +\ccTypedef{typedef TriangulationDataStructure_3::Vertex Vertex;}{} \ccGlue -\ccTypedef{typedef Tds_3::Cell Cell;}{} +\ccTypedef{typedef TriangulationDataStructure_3::Cell Cell;}{} \ccCreation \ccCreationVariable{c} %% choose variable name -\ccThree{Tds::Vertex}{v(const Point & p, Cell* c);}{} +\ccThree{TriangulationDataStructure::Vertex}{v(const Point & p, Cell* c);}{} The constructors of a cell do not insert it into any triangulation data structure. To add a cell into a given triangulation @@ -146,7 +146,7 @@ a precise indication of the kind of invalidity encountered.} \ccSeeAlso -\ccc{Tds_3::Vertex}. +\ccc{TriangulationDataStructure_3::Vertex}. %% \ccExample diff --git a/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_vertex_3.tex b/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_vertex_3.tex index 1f323261976..5d186a3a011 100644 --- a/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_vertex_3.tex +++ b/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/Triangulation_3_ref/Triangulation_data_structure_3/Tds_vertex_3.tex @@ -11,7 +11,7 @@ % +------------------------------------------------------------------------+ -\begin{ccRefConcept}[Tds_3::]{Vertex} +\begin{ccRefConcept}[TriangulationDataStructure_3::]{Vertex} %% \ccHtmlCrossLink{} %% add further rules for cross referencing links %% \ccHtmlIndexC[concept]{} %% add further index entries @@ -32,15 +32,15 @@ for the geometric triangulation class. (See Section~\ref{TDS3-sec-design}.) 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}. +types defined by the triangulation data structure class \ccc{TriangulationDataStructure}. -\ccTypedef{typedef Tds_3::Vertex Vertex;}{} +\ccTypedef{typedef TriangulationDataStructure_3::Vertex Vertex;}{} \ccGlue -\ccTypedef{typedef Tds_3::Cell Cell;}{} +\ccTypedef{typedef TriangulationDataStructure_3::Cell Cell;}{} \ccCreation \ccCreationVariable{v} %% choose variable name -\ccThree{Tds::Vertex}{v(const Point & p, Cell* c);}{} +\ccThree{TriangulationDataStructure::Vertex}{v(const Point & p, Cell* c);}{} \ccConstructor{Vertex();} {Introduces a vertex \ccVar. @@ -60,7 +60,7 @@ triangulation data structure alone.}}} {Introduces a vertex \ccVar, and sets the pointer to the incident cell to \ccc{c}.} -\ccConstructor{Tds_vertex_3();}{default constructor.} +\ccConstructor{Vertex();}{default constructor.} \ccOperations @@ -94,7 +94,7 @@ a precise indication on the kind of invalidity encountered.} \ccSeeAlso -\ccc{Tds_3::Cell}. +\ccc{TriangulationDataStructure_3::Cell}. %% \ccExample diff --git a/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/main.tex b/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/main.tex index b9629686f0d..10623c72b23 100644 --- a/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/main.tex +++ b/Packages/Triangulation_3/doc_tex/basic/Triangulation_3/main.tex @@ -1,5 +1,5 @@ \input{Triang3} -\input{Triangulation3_ref/Triangulation/main.tex} +\input{Triangulation_3_ref/Triangulation_3/main.tex} \input{TDS3} -\input{Triangulation3_ref/Triangulation_data_structure/main.tex} +\input{Triangulation_3_ref/Triangulation_data_structure_3/main.tex}