Freie Universitaet Berlin (Germany), Martin-Luther-University Halle-Wittenberg
(Germany) and RISC Linz (Austria) as they transfer the copyright to other
sites.
We declare
cmake_minimum_required(VERSION 2.6.2)
but we also use
cmake_policy(VERSION 2.8.4)
to declare that our CMake scripts are OK with all the defaults of CMake policies
as of CMake-2.8.4. That shuts down the warnings of CMake-2.8.4.
That way, we no longer need any declaration of specific policies.
Those two lines must be present and maintained in all our CMakeLists.txt
files (the one for the libraries, and also the one for examples and demos,
and maybe tests).
The documentation of CGAL says that the minimal version of CMake must be
CMake-2.6.2.
- change cmake_minimum_required to VERSION 2.6.2
- no longer any need for the policy CMP0003 (was for 2.4.x)
- no longer any need for CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS (was for 2.4)
In particular remove UNTESTED_XXXXXXXXXXX unused variable that possibly hide true warnings.
In those cases, the string printed while executed now starts with "NOTE: ".
*CGAL internal code no longer rely on depecrated features
The tests of compare_distance(T1, T2, T3, T4) are minimalist. As the
implementation is trivial and rely on CGAL_NTS compare and
CGAL::square_distance, that should be enought.
| ------------------------------------------------------------------------
| r57752 | lrineau | 2010-08-03 16:22:25 +0200 (Tue, 03 Aug 2010) | 6 lines
| Changed paths:
| M /trunk/Cartesian_kernel/include/CGAL/Cartesian/function_objects.h
| M /trunk/Homogeneous_kernel/include/CGAL/Homogeneous/function_objects.h
| M /trunk/Kernel_23/doc_tex/Kernel_23_ref/Kernel_CompareDistance_2.tex
| M /trunk/Kernel_23/doc_tex/Kernel_23_ref/Kernel_CompareDistance_3.tex
| M /trunk/Kernel_23/doc_tex/Kernel_23_ref/Kernel_CompareSquaredDistance_2.tex
| M /trunk/Kernel_23/doc_tex/Kernel_23_ref/Kernel_CompareSquaredDistance_3.tex
| M /trunk/Kernel_23/doc_tex/Kernel_23_ref/Kernel_ComputeSquaredDistance_2.tex
| M /trunk/Kernel_23/doc_tex/Kernel_23_ref/Kernel_ComputeSquaredDistance_3.tex
| A /trunk/Kernel_23/doc_tex/Kernel_23_ref/compare_distance.tex
| M /trunk/Kernel_23/doc_tex/Kernel_23_ref/compare_squared_distance.tex
| M /trunk/Kernel_23/include/CGAL/Kernel/global_functions.h
| M /trunk/Kernel_23/include/CGAL/Kernel/global_functions_internal_2.h
| M /trunk/Kernel_23/include/CGAL/Kernel/global_functions_internal_3.h
| M /trunk/Kernel_23/test/Kernel_23/include/CGAL/_test_new_2.h
| M /trunk/Kernel_23/test/Kernel_23/include/CGAL/_test_new_3.h
|
| - Deprecate operator()(T1, T2, T3, T4) of Kernel::CompareSquaredDistance_[23]
| and move it to Kernel::CompareDistance_[23].
| - Add CGAL::compare_distance(T1, T2, T3, T4).
|
| (Test suite OK.)
|
| ------------------------------------------------------------------------
overloads:
template <typename T1, typename T2>
Comparison_result
operator()(T1, T2, Kernel::FT);
and
template <typename T1, typename T2, typename T3, typename T4>
Comparison_result
operator()(T1, T2, T3, T4); // compare distances |t1, t2|^2 and |t3, t4|^2.
Before that revision, the types T_i were hardcoded to Kernel::Point_3
without any reason.
And Kernel::Compare_Squared_distance_2 and
Kernel::Compare_Squared_distance_3 now have the same implementation, and
almost the same documentation (but the set of admitted input types). The
implementations could even have been factorized.
(The Kernel_23 testsuite passes on Linux, as well as the doc_tex testsuite.)
There is now Ambiant_dimension and Feature_dimension.
The handling of the dynamic dimension case is now done by having
the di,ension tag as the first thing provided, with the integral
constant value available only when it makes sense (INT_MAX no longer needed).
det2x2_by_formula
det3x3_by_formula
det4x4_by_formula
det5x5_by_formula
det6x6_by_formula
to:
determinant
How cute... a name independent of the dimension, and even readable !
sign_of_determinant2x2
sign_of_determinant3x3
sign_of_determinant4x4
sign_of_determinant5x5
sign_of_determinant6x6
to:
sign_of_determinant
So that we have less dimension-dependent namings, at least internally...
The additional dummy "int" specifies that the 2 points are
the lower-left and upper-right corner. This is more efficient
when one knows they are already in this configuration.
Same thing for Iso_cuboid_3, and the functors.
Use them in Cartesian_converter and Homogeneous_converter.