fix the manual, and mention the problems pointed out by Laurent R. about

non robustness with regular_traits<predefined_kernels>
This commit is contained in:
Monique Teillaud 2006-06-11 13:19:01 +00:00
parent dc027745ea
commit e55fd5cdcd
2 changed files with 16 additions and 4 deletions

View File

@ -332,9 +332,17 @@ It can be used as a traits class for
\ccc{Regular_triangulation_3<RegularTriangulationTraits_3,
TriangulationDataStructure_3>}.
There is also another model of the traits concept,
\textbf{Note that for regular triangulations, plugging a filtered kernel such
as \ccc{Exact_predicates_inexact_constructions_kernel} or
\ccc{Exact_predicates_exact_constructions_kernel} in
\ccc{Regular_triangulation_euclidean_traits_3<K,Weight>} will in fact
not provide exact predicates since the weighted points and the
predicates on them are not defined in the \cgal\ kernels.}
To solve this, there is also another model of the traits concept,
\ccc{Regular_triangulation_filtered_traits_3<FK>}, which is providing filtered
predicates (exact and efficient).
predicates (exact and efficient). The argument \ccc{FK} must be a
model of the \ccc{Kernel} concept, and it is also restricted to be a
instance of the \ccc{Filtered_kernel} template.
\subsection{The Triangulation Data Structure Parameter}
\label{Triangulation3-sec-tds}

View File

@ -3,13 +3,17 @@
#include <CGAL/Exact_predicates_inexact_constructions_kernel.h>
#include <CGAL/Regular_triangulation_3.h>
#include <CGAL/Regular_triangulation_euclidean_traits_3.h>
#include <CGAL/Regular_triangulation_filtered_traits_3.h>
#include <cassert>
#include <vector>
//note that the usual
//struct K : public CGAL::Exact_predicates_inexact_constructions_kernel {};
//does not work here (because there is a partial specialization in
//Regular_triangulation_filtered_traits_3
typedef CGAL::Exact_predicates_inexact_constructions_kernel K;
typedef CGAL::Regular_triangulation_euclidean_traits_3<K> Traits;
typedef CGAL::Regular_triangulation_filtered_traits_3<K> Traits;
typedef Traits::RT Weight;
typedef Traits::Bare_point Point;