Commit Graph

438 Commits

Author SHA1 Message Date
Laurent Rineau df4eed9302 add tests for the dihedral angle 2023-11-29 15:27:57 +01:00
Sébastien Loriot 0e3f3a33d1 test to be fixed --> tetra orientation is 0 2023-11-29 12:27:34 +01:00
Sébastien Loriot 6b570f767e fix sign 2023-11-28 18:10:32 +01:00
Sébastien Loriot b66afab814 Merge remote-tracking branch 'sloriot/CGAL-using_c++17_stl' into HEAD 2023-07-05 11:29:35 +02:00
Sébastien Loriot dfc386d65b Merge branch 'master' into HEAD 2023-06-22 14:05:45 +02:00
Sébastien Loriot 0ee31a5d4f remove extra parenthesis 2023-06-19 19:17:49 +02:00
Sébastien Loriot f936680600 Merge remote-tracking branch 'cgal/master' into HEAD 2023-06-15 18:48:39 +02:00
Sébastien Loriot 9cdfe70abb Merge remote-tracking branch 'sloriot/CGAL-toward_6.0' 2023-06-15 11:34:09 +02:00
Sébastien Loriot 9a0bdb5d96 boost::variant ---> std::variant 2023-06-15 10:57:10 +02:00
Sébastien Loriot 604dcdc435 boost::optional => std::optional 2023-06-15 10:57:09 +02:00
Sébastien Loriot bbc4d08ee0 Merge remote-tracking branch 'cgal/master' into HEAD 2023-06-15 10:47:07 +02:00
Sébastien Loriot c8a88b9014 remove CGAL_static_assertion* 2023-06-15 10:42:10 +02:00
Sebastien Loriot 11b92e94f8
Add an alternative of Mpzf using boost cpp_int (#7191)
## TODO:
- [x] branch size
- [x] boost backend should not be the default in 5.6
2023-05-22 09:23:35 +02:00
Sébastien Loriot 4e8259e309 use Exact_integer/Exact_rational 2023-05-11 16:59:46 +02:00
Laurent Rineau d2bc415a15 Merge pull request #6950 from lrineau/CGAL-allow_Epick_with_float-GF
Simple_precision_epick: an Epick-like kernel with float as FT
2023-05-04 16:37:17 +02:00
Sébastien Loriot c1ceeaed55 try be less aggressive 2023-05-03 18:21:29 +02:00
Sébastien Loriot f530f69752 try to suppress warnings 2023-05-02 15:23:17 +02:00
Laurent Rineau 42297b06a4 fix runtime error with single precision (float), cont. 2023-04-24 14:49:42 +02:00
Sébastien Loriot b039040f73 boost::is_convertible -> std::is_convertible 2023-04-23 22:37:07 +02:00
Laurent Rineau af5468c3a8 fix runtime error with single precision (float) 2023-04-20 21:15:19 +02:00
Sébastien Loriot fbe559adc9 Merge 'cgal/master' into PMP-decimation 2023-02-14 08:33:24 +01:00
Sébastien Loriot 9e137bca24 Merge 'cgal/master' 2023-01-31 12:26:55 +01:00
Laurent Rineau 8a6b583780 Merge pull request #6880 from soesau/PMP-tests_only_for_epeck-soesau
Pmp tests only for epeck
2023-01-27 21:02:26 +01:00
Mael 0ff7882997
Merge branch 'master' into feature/bug_documentation_spell_20221113 2022-12-06 22:21:06 +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 7d250c5a2c Fix the testsuite for Homogenous 2022-11-08 15:18:31 +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 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
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
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 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
Laurent Rineau 9d40a225ff
Update Kernel_23/test/Kernel_23/Filtered_cartesian.cpp 2022-09-23 15:32:52 +02:00
Mael Rouxel-Labbé f417495a0e Handle deleted functions in RT/FT test 2022-09-23 11:35:29 +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 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 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
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 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
Sebastien Loriot 978d83a349
Merge pull request #6573 from sloriot/CGAL-pedantic_warnings
Fix pedantic warnings
2022-05-13 15:55:26 +02:00
Sébastien Loriot 6486844750 fix pedantic warnings 2022-05-10 11:30:39 +02:00
Laurent Rineau 2288225448 Massive update of CMake policies to version 3.23 2022-05-06 09:34:35 +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
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 6c66626cba int -> std::size_t 2022-03-16 08:01:56 +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 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 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
Sébastien Loriot 0da6999ee9 add missing test header 2022-01-28 16:44:04 +01:00
Sébastien Loriot d16dfc381e add Compare_angle_3 functor in the Kernel 2022-01-27 19:43:21 +01:00
Laurent Rineau a5a5a43205
Merge pull request #6120 from MaelRL/Kernel_23-Converter_fundamental_types-GF 2022-01-24 11:07:34 +01:00
Andreas Fabri e388c898cd Deal with Kernel_23 2022-01-18 16:39:43 +00:00
Sébastien Loriot ad686a61f7 fix conversion warning and remove useless test (producing a warning) 2022-01-18 09:30:41 +01:00
Mael Rouxel-Labbé 08f9cfb192 Update tests 2021-12-17 12:23:54 +01:00
Mael Rouxel-Labbé ea42eaea5d More tests 2021-12-03 16:49:50 +01:00
Laurent Rineau df777080ff Merge pull request #6102 from afabri/Kernel_23-Non_zero_dimension_3-GF
Kernel_23: Add NonZeroDimension_3
2021-11-18 14:02:07 +01:00
Mael Rouxel-Labbé 1774ad885f More converter tests 2021-11-16 16:39:20 +01:00
Mael Rouxel-Labbé a294ac30ed Tiny addition to converter tests 2021-11-12 10:51:40 +01:00
Mael Rouxel-Labbé 9f1fef3408 Add a test 2021-11-10 16:24:22 +01:00
Sébastien Loriot ab48f63e30 update latest cmake version tested 2021-11-09 10:58:47 +01:00
Sébastien Loriot 58181afcdb remove useless include directives 2021-11-09 10:16:12 +01:00
Andreas Fabri 7cb53ab8ef Change to NonZeroCoordinateIndex 2021-11-03 17:30:26 +01:00
Mael Rouxel-Labbé e424356ffa Add Construct_projected_point_3(P3, P3) + correct parameter order
Not a kernel requirement
2021-09-28 15:34:51 +02:00
Sébastien Loriot 98e471849b moving files from internal to PKG/internal 2021-08-26 11:33:39 +02:00
Sebastien Loriot 92d90a4a11
Merge pull request #5667 from afabri/Kernel-compare_slopes-GF
Kernel: Add compare_slope with 4 points
2021-08-12 10:12:26 +02:00
Laurent Rineau 04b690b099 Merge pull request #5736 from danston/Kernel_23-add_centroid_2_and_determinant_2-danston
Projection Traits With Centroid 2 and Determinant 2
2021-07-27 16:25:09 +02:00
Laurent Rineau 529add28d3 Merge pull request #5538 from Dig-Doug/bbox-size
Bbox size helpers
2021-07-07 14:37:41 +02:00
Laurent Rineau 0f906ae606 Merge pull request #5545 from Dig-Doug/segment-midpoint
Segment_2/Segment_3 midpoint()
2021-07-07 14:37:38 +02:00
Dmitry Anisimov e6d3534d67 Merge remote-tracking branch 'origin/master' into Kernel_23-add_centroid_2_and_determinant_2-danston 2021-05-28 14:45:31 +02:00
Andreas Fabri 3ded9e10d0 Add unit test 2021-05-24 10:08:17 +02:00
Dmitry Anisimov 8d6c8bda6e fixed typos and tested 2021-05-20 18:01:31 +02:00
Dmitry Anisimov cf7cba9f08 added embed for centroid object + tests 2021-05-20 17:44:53 +02:00
Laurent Rineau 4a2f016f6a Merge pull request #5617 from afabri/Nef_3-translation-GF
Nef_3: Add Aff_transformation_3::is_translation()
2021-05-18 18:14:17 +02:00
Andreas Fabri 20d1629e1b Add compare_slope with 4 points 2021-04-30 17:39:57 +02:00
Laurent Rineau c091c7f86e Merge pull request #5532 from lrineau/Kernel_23-Do_interesect__without_division-GF
Remove operator/ from CGAL::Mpzf and implement Do_intersect_3 with RT only (without division)
2021-04-28 15:24:15 +02:00
Andreas Fabri c238e9dab5 Merge remote-tracking branch 'cgal/master' into Nef_3-translation-GF 2021-04-27 15:23:56 +01:00
Andreas Fabri e73b8de89f Add the 2D stuff. In homogeneous add Scaling_repH3 2021-04-22 21:17:24 +01:00
Andreas Fabri 35fc3c7d2d Add missing implementations for Homogeneous. Fix the test for Filtered_cartesian as it has become more exact now 2021-04-20 09:04:23 +01:00
Sebastien Loriot b7323389c7
Merge pull request #5622 from maxGimeno/CMake-Update_versions_in_scripts-maxGimeno
Update maximum cmake versions
2021-04-17 10:58:14 +02:00
Maxime Gimeno c49152359c update max version of cmake and announce the new minimal in CHANGE.md 2021-04-15 15:08:54 +02:00
Maxime Gimeno 17602e589e Merge remote-tracking branch 'cgal/master' into CGAL-clang_tidy__nullptr_on_Mesh_2-GF 2021-04-07 09:17:51 +02:00
Laurent Rineau 1b54449dc5 Merge pull request #4878 from danston/Kernels-decltypes-danston
Improve decltype/result_of/invoke_result
2021-04-06 15:13:21 +02:00
Andreas Fabri 6c7f05e0be rank written by Sebastien 2021-03-29 16:03:06 +01:00
Sébastien Loriot c70c0a511f use initialized vector 2021-03-29 09:14:23 +02:00