Mael Rouxel-Labbé
4bb2d13272
Rephrase comment
2022-11-22 12:36:07 +01:00
albert-github
45478184de
spelling corrections
...
Some spelling corrections (Directories starting with `E`-` L`),
some backward work
some forward work
2022-11-15 13:39:40 +01:00
Laurent Rineau
fa83872f81
Remove the trailing white space I added by error
2022-11-08 16:02:17 +01:00
Laurent Rineau
a6050f4bb3
Fix the comment
2022-11-08 15:57:53 +01:00
Laurent Rineau
7d250c5a2c
Fix the testsuite for Homogenous
2022-11-08 15:18:31 +01:00
Laurent Rineau
92d8d1c805
Merge remote-tracking branch 'cgal/master' into CGAL-allow_Epick_with_float-GF
...
# Conflicts:
# Mesh_3/test/Mesh_3/test_meshing_3D_image.cpp
2022-11-08 12:11:06 +01:00
Laurent Rineau
51a5ce0c44
Test Simple_precision_epick
...
... and adapt the code of the testsuite. In particular, there are lots
of cases of inexact constructions that are compared to exact results.
2022-11-08 12:08:58 +01:00
Laurent Rineau
3933d0bec8
Fix a 16 years old todo
...
Sylvain Pion, wrote in August 2006:
> FIXME : Use Qrt<> here
At that time `Qrt` stood for `Qualified_result_of` (sic, maybe it was
named "qualified result type" at a time).
Now that we can use C++14, we have `decltype(auto)` instead.
2022-11-08 12:07:14 +01:00
Laurent Rineau
3600173ed4
Missing includes, for users of Epick
...
(even if those headers are probably already included elsewhere)
2022-11-08 12:01:44 +01:00
Laurent Rineau
b56a79eacf
Compute_[abcd]_[23] return references
...
That simplifies the code, and is more correct.
2022-11-08 11:06:44 +01:00
Laurent Rineau
cb0ad7f509
Use template aliases to factorize code
2022-11-08 11:04:38 +01:00
Laurent Rineau
21f60772a1
Do not enable CGAL_KERNEL_23_TEST_RT_FT_PREDICATE_FLAGS by default
2022-11-07 15:46:13 +01:00
Laurent Rineau
2b41ebaaaa
Remove last remnant of C++17 if constexpr
2022-11-07 15:45:58 +01:00
Laurent Rineau
1c5454dcbe
Add Converting_construction to Simple_precision_epick
...
The difficulty is to detect/define which constructions are "trivial"
and must not be wrapped into `Converting_construction`. Otherwise the
use of `Cartesian_converter`, that uses trivial constructions itself,
can lead to loops and infinite call stacks.
2022-10-28 12:07:58 +02:00
Laurent Rineau
c685810119
Add Construct_point_on_3(Line_3), for efficiency
2022-10-28 12:07:58 +02:00
Sébastien Loriot
0cac6a9da8
Merge remote-tracking branch 'sloriot/PMP-decimation' into PMP-decimation
2022-10-25 14:55:57 +02:00
Laurent Rineau
a46a6db2bb
Allow to use test_RT_or_FT_predicates with ninja, and ctest
2022-10-14 12:15:48 +02:00
Mael Rouxel-Labbé
f83b970461
Add a comment explaining the purpose of atomic_compilation_test.cpp
2022-10-13 21:24:05 +02:00
Laurent Rineau
3745073df6
Fix a compilation error
2022-10-13 18:25:58 +02:00
Mael Rouxel-Labbé
73de5e49f4
Remove unnecessary include
2022-10-12 21:32:30 +02:00
Mael Rouxel-Labbé
296d9e5cc0
Update RTFT test
2022-10-12 21:28:40 +02:00
Mael Rouxel-Labbé
2c23a6d5c5
Revert back to wrapping result_type to distinguish FT-necessary operator()s
2022-10-12 21:24:59 +02:00
Laurent Rineau
026049cf8e
Switch to Epick-with-float using a new macro
...
If `CGAL_EPICK_SINGLE_PRECISION` is defined, then the number type
of `CGAL::Epick` is `float` instead of `double`.
2022-10-10 16:15:01 +02:00
Laurent Rineau
0e823324c9
Allow to use an Epick-like kernel with float as FT
2022-10-10 15:49:17 +02:00
Sven Oesau
2c9b5ed528
more tests only for exact kernels in Kernel_23
2022-10-01 16:07:03 +02:00
albert-github
680e144ad1
issue 6891 Kernel_23: inconsistent documentation
...
Made preconditions in the C++ form.
2022-09-29 18:08:53 +02:00
Laurent Rineau
9d40a225ff
Update Kernel_23/test/Kernel_23/Filtered_cartesian.cpp
2022-09-23 15:32:52 +02:00
Andreas Fabri
d3fca65ae5
CGAL: No longer per package assertions
2022-09-23 12:49:40 +01:00
Mael Rouxel-Labbé
f417495a0e
Handle deleted functions in RT/FT test
2022-09-23 11:35:29 +02:00
Mael Rouxel-Labbé
d0fe75e908
Add missing FT_necessary tags
2022-09-23 11:35:12 +02:00
Mael Rouxel-Labbé
ae30bcf819
Remove obsolete RT/FT tests
2022-09-22 12:25:25 +02:00
Mael Rouxel-Labbé
c93e33c731
Misc minor cleaning/improvements to RT|FT kernel test
2022-09-22 12:06:09 +02:00
Mael Rouxel-Labbé
873cc884b5
Get rid of _RT / _RT_FT kernel interface macros
2022-09-22 12:03:25 +02:00
Mael Rouxel-Labbé
214e072959
Switch from RT_sufficient to FT_necessary
2022-09-22 12:02:53 +02:00
Mael Rouxel-Labbé
01af5bce52
Add an automatic test to detect correct presence/absence of RT_sufficient
2022-09-21 15:03:09 +02:00
Laurent Rineau
04a7b31a07
WIP: test one predicate with a set of arguments with RT
2022-09-15 16:06:28 +02:00
Laurent Rineau
a267cee598
Avoid one intermediate call to the global (non-internal) function
2022-09-15 16:05:35 +02:00
Laurent Rineau
36c0a779d7
WIP: how to detect the arity of a predicate
2022-09-14 15:10:49 +02:00
Laurent Rineau
f52298a8c5
WIP: try to always use Filtered_predicate_RT_FT
2022-09-08 17:30:14 +02:00
Laurent Rineau
03b1501508
Merge branch 'Kernel-Compare_distance_3_RT_FT-GF' into Kernel-Compare_distance_3_RT_FT__new_proposal-GF
2022-09-07 14:49:45 +02:00
Laurent Rineau
dcca65b740
Spelling typo
2022-09-07 14:48:45 +02:00
Laurent Rineau
4b660d9ec9
Another proposal for Filtered_predicate_RT_FT
...
Instead of having the return type wrapped in a `Needs_FT` tag,
not the call operator overloads that can be called with `RT` are
"tagged" by adding a last argument of type `RT_sufficient` with a
default value.
2022-09-07 11:10:13 +02:00
Mael Rouxel-Labbé
9b265fddf8
Uniformize REQUIRED / QUIET usage:
...
Following this:
- CGAL: always REQUIRED
- CGAL component: COMPONENT / OPTIONAL_COMPONENT (never QUIET)
- required 3rd party: (not QUIET) + message(NOTICE "") on NOT_FOUND
- optional 3rd party: QUIET + message(STATUS "") except for Polyhedron/demo
- 3rd party components: COMPONENT / OPTIONAL_COMPONENT
(QUIET depending on required or optional 3rd party)
2022-09-06 16:24:27 +02:00
Laurent Rineau
7c92341be7
Introduce CGAL_Kernel_pred_RT_or_FT
...
This commit introduces a new kind of predicate in
`<CGAL/Kernel/interface_macros.h>`. In addition to
- `CGAL_kernel_pred` for predicates,
- `CGAL_Kernel_pred_RT` for predicates that can be implemented using a
ring-type,
now there is also:
- `CGAL_Kernel_pred_RT_or_FT` for predicates with multiple overloads of
`operator()`, some needing a field type and other needing a ring type
(without the division operator).
The C++ code can discriminate between the two cases with a special wrapper
for the return type: `CGAL::Needs_FT<result_type` instead of `result_type`
(defined in `<CGAL/tags.h>`.
In `<CGAL/Filtered_predicate.h>`, in addition to the usual class template
`Filtered_predicate`, there is now also `Filtered_predicate_RT_FT` that
takes three predicates as template parameters instead of two:
- the exact predicate with an ring-type,
- the exact predicate with a field-type,
- the approximate predicate (with `Interval_nt` as number-type).
For the moment, only `Compare_distance_3` in
`<CGAL/Cartesian/function_objects.h>` is using the new
`Filtered_predicate_RT_FT`.
Before this commit, the file
`Kernel_23/test/Kernel_23/include/CGAL/_test_new_3.h` was testing
`Compare_distance_3` only with three points or for points. This commit adds:
- a test with `Point_3, Point_3, Segment_3`, and
- a test with `Line_3, Point_3, Point_3`, that actually needs a field type
with its current implementation.
In the test `Kernel_23/test/Kernel_23/Filtered_cartesian.cpp`, the macro
`CGAL_NO_MPZF_DIVISION_OPERATOR` is defined, to remove the division operator
from `CGAL::Mpzf`. `CGAL::Mpzf` is a ring-type, even with its `operator/`
(because that `operator/` can only compute exact divisions), but with
`CGAL_NO_MPZF_DIVISION_OPERATOR` defined, that is now checked by the compiler.
2022-09-02 11:31:47 +02:00
Sébastien Loriot
861588abe1
Merge 'sloriot/CGAL-std_type_traits' into master
2022-08-03 20:19:51 +02:00
Sébastien Loriot
1e857506c1
Merge remote-tracking branch 'cgal/5.5.x-branch'
2022-07-12 18:22:02 +02:00
Sébastien Loriot
12795ba29c
Merge remote-tracking branch 'cgal/5.4.x-branch' into HEAD
2022-07-12 18:21:16 +02:00
Sébastien Loriot
45b5fd43f8
fix more warnings
2022-07-12 18:18:34 +02:00
Mael Rouxel-Labbé
d07434708a
Merge remote-tracking branch 'cgal/master' into CH2-Fix_bykat-GF
2022-07-11 09:39:45 +02:00
Mael Rouxel-Labbé
384cddadec
Fix some result_types in projection traits
2022-07-05 10:11:44 +02:00
Mael Rouxel-Labbé
711d64674a
Less_signed_... --> Compare_signed_... in CH3 adapters
2022-07-02 17:19:48 +02:00
Laurent Rineau
561cc66264
Backport the patch of pull request #6602 from lrineau/Triangulation_2-fix_cdt_2-GF
...
Try to fix CDT_2 with inexact construction of intersections
2022-06-29 12:30:35 +02:00
Laurent Rineau
e1195a4229
Make public Exact_kernel and related types
2022-06-17 16:37:56 +02:00
Sébastien Loriot
5872413f37
remove boost is_same headers
2022-06-10 08:48:53 +02:00
Sébastien Loriot
3fa436459d
BOOST_MPL_ASSERT -> static_assert
2022-06-10 08:46:01 +02:00
Sébastien Loriot
ac8b6d4731
boost::is_same --> std::is_same
2022-06-10 08:18:20 +02:00
Sébastien Loriot
4f5f8341cc
use std::enable_if_t
2022-06-10 07:37:53 +02:00
Sébastien Loriot
47d6b3a240
add barycenter functor
2022-06-05 19:06:23 +02:00
Laurent Rineau
258dd55c03
Make it work with the projection traits
2022-06-02 16:17:26 +02:00
Laurent Rineau
575f7a42fe
Move exact_intersection_point back to CT_2
2022-06-01 20:31:22 +02:00
Laurent Rineau
ffe675423f
Merge branch 'master' into Triangulation_2-fix_cdt_2-GF
2022-06-01 15:15:18 +02:00
Laurent Rineau
53b4878a94
Use exact FT instead of exact Kernel
2022-05-31 18:09:00 +02:00
Laurent Rineau
feaf6a4ca2
Add Kernel::Construct_exact_intersection_point_2
2022-05-31 16:40:34 +02:00
Sébastien Loriot
ebf9fb025a
Merge remote-tracking branch 'cgal/5.4.x-branch'
2022-05-26 18:13:59 +02:00
Sébastien Loriot
f29015ef1c
please intel 2019 compiler
2022-05-25 00:22:24 +02:00
Sébastien Loriot
2b547ec58a
Merge remote-tracking branch 'cgal/5.4.x-branch'
2022-05-13 17:26:04 +02:00
Sebastien Loriot
978d83a349
Merge pull request #6573 from sloriot/CGAL-pedantic_warnings
...
Fix pedantic warnings
2022-05-13 15:55:26 +02:00
Sebastien Loriot
269a391fa0
Merge pull request #6558 from lrineau/Installation-remove_wd4503-GF
...
CMake script updates: version of CMake and /wd4503 is only for MSVC 2015
2022-05-13 15:53:36 +02:00
Sebastien Loriot
a9d03ba945
Merge pull request #6508 from albert-github/feature/bug_documentation_code
...
Documentation update in respect to code fragments
2022-05-13 15:49:24 +02:00
Sébastien Loriot
6486844750
fix pedantic warnings
2022-05-10 11:30:39 +02:00
Andreas Fabri
46d1aea329
Convex_hull_3: Use K::Boolean and not bool
2022-05-09 15:30:26 +01:00
Laurent Rineau
2288225448
Massive update of CMake policies to version 3.23
2022-05-06 09:34:35 +02:00
Laurent Rineau
97e99cbc22
Merge pull request #6487 from afabri/Filtered_kernel-fix_depth_bug-GF
...
Kernel_23: Fix depth() in Epeck
2022-04-27 16:32:08 +02:00
Laurent Rineau
288456950d
Merge pull request #6488 from sloriot/ICC-workaround
...
Workaround issue with intel compiler
2022-04-27 16:32:06 +02:00
Laurent Rineau
1538fdbbbb
Merge pull request #6488 from sloriot/ICC-workaround
...
Workaround issue with intel compiler
2022-04-27 16:30:53 +02:00
albert-github
461dba692d
Documentation update in respect to code fragments
...
Update of documentation in respect of code fragments
- making code fragments work in footnotes
- placing some words in in code tags
- completing some words to code tags
- removing some `#` as they are not necessary
- don't show obfuscation code in email
2022-04-21 17:56:14 +02:00
Andreas Fabri
4b63716376
Add test file
2022-04-20 15:09:06 +01:00
Andreas Fabri
7dc7443e45
Add test of depth()
2022-04-20 12:48:28 +01:00
Sébastien Loriot
cca0a1942f
workaround issue with intel compiler
...
Cartesian_kernel/include/CGAL/Cartesian/Line_3.h(38): error: incomplete type is not allowed
Point_3 first;
^
2022-04-12 16:14:39 +02:00
Andreas Fabri
9023aaa542
More code for ORIGIN
2022-04-07 10:39:01 +01:00
Laurent Rineau
9b39561825
Merge pull request #6399 from afabri/Kernel_23-overload_for_origin-GF
...
Kernel_23: Add Orientation_3::operator()(Origin,Point_3,Point_3,Point_3)
2022-03-30 09:23:32 +02:00
Sébastien Loriot
3a03201ff1
Merge pull request #6338 from MaelRL/PMP-Orient_PS_with_PS-GF
...
Add orient_triangle_soup_with_reference_triangle_soup()
2022-03-30 08:03:29 +02:00
Sébastien Loriot
b9a14a447f
Merge pull request #6426 from afabri/Kernel_23-Call_function_objects-GF
...
Kernel_23: Call function objects from CGAL::Segment_3
2022-03-29 17:47:06 +02:00
Sébastien Loriot
5e894656f5
Merge pull request #6422 from afabri/Nef_3-avoid_needless_tests-GF
...
Nef_3: Avoid needless tests
2022-03-29 17:46:42 +02:00
Sébastien Loriot
99f0598f3e
Merge pull request #6378 from GilesBathgate/Nef_3-performance_sphere_circle-GilesBathgate
...
Nef_3: Sphere circle constructors.
2022-03-29 17:45:52 +02:00
Andreas Fabri
6251262a0a
Merge branch 'Kernel_23-overload_for_origin-GF' into Nef_3-performance_sphere_circle-GilesBathgate
2022-03-18 12:46:20 +01:00
Andreas Fabri
71bba3e226
Add Plane_3 constructor with Origin/Vector_3
2022-03-17 22:35:09 +01:00
Andreas Fabri
d39c7742f1
Kernel_23: Call function objects from CGAL::Segment_3
2022-03-17 12:14:43 +01:00
Andreas Fabri
6c66626cba
int -> std::size_t
2022-03-16 08:01:56 +01:00
Mael Rouxel-Labbé
8d95d22a9e
Tiny indentation fix
2022-03-15 00:46:39 +01:00
Giles Bathgate
8445780e09
Merge remote-tracking branch 'afabri/Kernel_23-overload_for_origin-GF' into Nef_3-performance_sphere_circle-GilesBathgate
2022-03-14 21:44:36 +00:00
Andreas Fabri
c3ba0ab4a2
Fix the test code
2022-03-14 10:27:33 +01:00
Andreas Fabri
04fa75eb84
Use auto
2022-03-11 09:12:17 +00:00
Andreas Fabri
6e4483a7d0
The same for Construct_orthogonal_vector_3
2022-03-10 14:18:48 +00:00
Andreas Fabri
f01e24c75b
Add Orientation_3::operator()(Origin,Point_3,Point_3,Point_3)
2022-03-10 10:55:44 +00:00
Laurent Rineau
82bef3fc90
Merge pull request #6392 from CGAL/CGAL-doc_inter_do_inter
...
better reference Kernel intersection functions
2022-03-10 11:05:21 +01:00
Sébastien Loriot
943a506526
better reference Kernel intersection functions
2022-03-08 15:52:14 +01:00
Marc Glisse
7d4b9de66b
Consistent count in the doc
...
We already say 5 a few lines below.
2022-02-28 16:14:34 +01:00
Laurent Rineau
f9c05a0ba1
Merge pull request #6253 from afabri/P2T2-assert-GF
...
CGAL: In testcode do not use CGAL_assertion but assert
2022-02-02 16:38:22 +01:00
Sébastien Loriot
cd7b4ad610
WS
2022-01-28 16:56:21 +01:00