diff --git a/Alpha_shapes_3/doc_tex/Alpha_shapes_3_ref/Alpha_shape_3.tex b/Alpha_shapes_3/doc_tex/Alpha_shapes_3_ref/Alpha_shape_3.tex index e5caf2a53ad..f16186cf81b 100644 --- a/Alpha_shapes_3/doc_tex/Alpha_shapes_3_ref/Alpha_shape_3.tex +++ b/Alpha_shapes_3/doc_tex/Alpha_shapes_3_ref/Alpha_shape_3.tex @@ -45,31 +45,24 @@ %---------------------------------------------------------------------- -\begin{ccRefClass} {Alpha_shape_3} +\begin{ccRefClass} {Alpha_shape_3} \ccDefinition The class \ccClassTemplateName\ represents the family of alpha shapes of points in the 3D space for {\em all} real $\alpha$. It maintains an underlying triangulation -of the class \ccc{Dt} which -represents connectivity and order among its faces. Each -$k$-dimensional face of the \ccc{Dt} is associated with -an interval that specifies for which values of $\alpha$ the face -belongs to the alpha shape. -% -The second template parameter \ccc{Atag} indicates whether the comparison -of alpha-values needs to be exact or not. Possible values are \ccc{CGAL::Tag_false} -(the default) and \ccc{CGAL::Tag_true}. The purpose of this tag is to provide -a robust implementation in the case a traits class with exact predicates but inexact -constructions is used for the triangulation. It is by default not activated as -it induces a small overhead and does not make sense if used together with a traits -class with exact constructions. +of the class \ccc{Dt}. Each k-dimensional face of Dt is associated with an +interval that specifies for which values of alpha the face belongs to the alpha shape. +The second template parameter \ccc{ExactAlphaComparisonTag} is a tag that, when set to +\ccc{CGAL::Tag_true}, triggers exact comparisons between alpha values. This is useful +when the Delaunay triangulation is instantiated with an exact predicates inexact constructions +kernel. By default the \ccc{ExactAlphaComparisonTag} is set to \ccc{CGAL::Tag_false} as it induces a small +overhead and does not make sense if used together with a traits class with exact constructions. Note that this class is at the same time used for {\em basic} and for {\em weighted} Alpha Shapes\ccIndexMainItem[C]{Weighted_alpha_shapes_3}. - \ccInclude{CGAL/Alpha_shape_3.h} \ccInheritsFrom @@ -90,12 +83,18 @@ it has to derive from a triangulation traits class. For example \ccc{Dt::Point} is a Point class. \ccNestedType{FT}{the number type of alpha values. \\ -In case \ccc{Atag} is \ccc{CGAL::Tag_false}, it is {Gt::FT}.\\ -In the case \ccc{Atag} is \ccc{CGAL::Tag_true}, it is a number type allowing filtered exact comparisons. -It provides functions \ccc{FT::Approximate_nt approx() const} and \ccc{FT::Exact_nt exact() const} -where \ccc{FT::Approximate_nt} and \ccc{FT::Exact_nt} are an interval number type and an exact field number type -respectively. It must be noted that an object of type \ccc{FT} is valid as long as the alpha shapes that creates -it is valid and has not been cleared. +In case \ccc{ExactAlphaComparisonTag} is \ccc{CGAL::Tag_false}, it is {Gt::FT}.\\ +In case \ccc{ExactAlphaComparisonTag} is \ccc{CGAL::Tag_true}, it is a number type +allowing filtered exact comparisons (that is, interval arithmetic is first used before +resorting to exact arithmetic).\\ +Access to the interval containing the exact value is provided through the function +\ccc{FT::Approximate_nt approx() const} where \ccc{FT::Approximate_nt} is \ccc{Interval_nt} +with \ccc{Protected=true}.\\ +Access to the exact value is provided through the function +\ccc{FT::Exact_nt exact() const} where \ccc{FT::Exact_nt} depends on the configuration of CGAL +(it is \ccc{CGAL::Gmpq} if \ccc{gmp} is available and \ccc{CGAL::Quotient} otherwise).\\ +It must be noted that an object of type \ccc{FT} is valid as long as the alpha shapes class that creates +it is valid and has not been modified. } \ccNestedType{size_type}{The size type.} @@ -387,7 +386,7 @@ is an internal format. \ccInclude{CGAL/IO/io.h} \ccFunction{ostream& operator<<(ostream& os, - const Alpha_shape_3& A);} + const Alpha_shape_3& A);} {Inserts the alpha shape \ccVar\ for the current alpha value into the stream \ccc{os}. \ccPrecond The insert operator must be defined for \ccc{Point}.} @@ -396,7 +395,7 @@ is an internal format. \ccInclude{CGAL/IO/alpha_shape_geomview_ostream_3.h} \ccFunction{Geomview_stream& operator<<(Geomview_stream& W, - const Alpha_shape_3& A);} + const Alpha_shape_3& A);} {Inserts the alpha shape \ccVar\ for the current alpha value into the Geomview stream \ccc{W}. \ccPrecond The insert operator must be defined for \ccc{GT::Point} and \ccc{GT::Triangle}.} diff --git a/Alpha_shapes_3/doc_tex/Alpha_shapes_3_ref/intro.tex b/Alpha_shapes_3/doc_tex/Alpha_shapes_3_ref/intro.tex index 45ce0b28ea0..a90f1121df4 100644 --- a/Alpha_shapes_3/doc_tex/Alpha_shapes_3_ref/intro.tex +++ b/Alpha_shapes_3/doc_tex/Alpha_shapes_3_ref/intro.tex @@ -133,7 +133,7 @@ of the alpha complex where singular faces are removed. \subsection*{Classes} \ccRefIdfierPage{CGAL::Alpha_status} \\ -\ccRefIdfierPage{CGAL::Alpha_shape_3}\\ +\ccRefIdfierPage{CGAL::Alpha_shape_3}\\ \ccRefIdfierPage{CGAL::Alpha_shape_vertex_base_3}\\ \ccRefIdfierPage{CGAL::Alpha_shape_cell_base_3}