Commit Graph

106 Commits

Author SHA1 Message Date
Mael Rouxel-Labbé be6109dc14 Fix predicate/construction inconsistencies in P3T3 canonicalization functions
There are two use cases:
- either we care about the shifted position (for example for P3M3 where
we will insert the shifted position)
- either we don't care about the shifted position, and we are ok with
point + shifting offset (for example in P3M3 predicates to determine
is_bad)

In the first case, we cannot determine the shift using predicates,
otherwise we could have an inconsitency in the final result:
the predicates say the point is in, but once constructed it is not.

So this commit distinguishes between both. When we care about the
actual shifted position, we construct the point. There might be
numerical errors if we are not using exact constructions, but it
does not really matter.

What should be done better:
- use compare_x/y/z_3 instead of <
- handle the case where the numerical errors are such that you
get a really silly point far from the truth. Maybe this should
all be done in EPECK. There is something like this in the
history of canonicalize_helper.h ....
2025-03-27 12:14:14 +01:00
Laurent Rineau e5001d1a50 update our CMake version 3.18...3.31
That will suppress the warnings about `CMP0167` (from CMake 3.30):

```
CMake Warning (dev) at cmake/modules/display-third-party-libs-versions.cmake:37 (find_package):
  Policy CMP0167 is not set: The FindBoost module is removed.  Run "cmake
  --help-policy CMP0167" for policy details.  Use the cmake_policy command to
  set the policy and suppress this warning.
```
2025-02-04 14:32:37 +01:00
Andreas Fabri 527569346e CGAL: Modernize CMakeLists.txt 2024-10-08 17:02:41 +01:00
Laurent Rineau 32893b91c0 Merge pull request #8263 from lrineau/CGAL-update_minimal_cmake-GF
cmake_minimum_required(VERSION 3.12...3.29)
2024-06-12 10:06:12 +02:00
Laurent Rineau 3a223ebd1e cmake_minimum_required(VERSION 3.12...3.29) 2024-06-06 20:19:44 +02:00
albert-github 36c8b7589d Spelling corrections
Last batch (for now) of spelling corrections in doxygen and normal comments
2024-05-31 19:05:34 +02:00
Mael Rouxel-Labbé 28ed7be7d7 P3M3 always needs to Eigen now 2023-03-23 14:46:31 +01:00
Mael Rouxel-Labbé cd0c81a98a Merge remote-tracking branch 'cgal/master' into P3M3-Undocumented_polyhedral_domain_example-GF 2023-03-20 10:14:27 +01:00
Mael Rouxel-Labbé 23900fb1ce Remove sharp features handling from the periodic polyhedral example
it's currently bugged...
2023-01-23 12:03:47 +01:00
Mael Rouxel-Labbé 6de5332970 Add periodic polyhedral surface example to CMakeLists.txt 2022-12-06 14:46:43 +01:00
Mael 6538b22e06
Merge branch 'master' into CGAL-Clean_CMakeLists.txt-GF 2022-12-05 16:03:41 +01:00
Mael Rouxel-Labbé b10b84fb7f Merge remote-tracking branch 'cgal/master' into P3M3-Undocumented_polyhedral_domain_example-GF 2022-11-18 16:47:07 +01:00
Mael Rouxel-Labbé 3c24c1fe51 Add an example of periodic polyhedral domain 2022-11-18 16:25:24 +01:00
Mael Rouxel-Labbé 71ff5c7b3c Use a non-cubic domain by default in the basic P3M3 example 2022-11-18 16:14:23 +01:00
Sébastien Loriot b0a144c6e7 update examples to the new API 2022-09-26 20:14:26 +02:00
Mael Rouxel-Labbé 6f187f332c Misc minor fixes/improvements 2022-09-14 14:08:23 +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
Mael Rouxel-Labbé 4fc486b195 Purge CMakeLists.txts from obsolete code / noise 2022-09-06 16:19:11 +02:00
GYuvanShankar 3c5299dd94 Changed missed out calls 2022-07-05 20:45:04 +05:30
GYuvanShankar 996985126c Changed some functions to pass without specifying param. name 2022-07-05 20:33:49 +05:30
GYuvanShankar 4457b05350 Removed _new prefix from named parameters 2022-06-29 17:38:54 +05:30
GYuvanShankar 9d870b3377 New API support for make_periodic_3_mesh_3.h 2022-06-21 19:39:58 +05:30
GYuvanShankar 5a8d90019e New API support and docs for optimize_periodic_3_mesh_3.h 2022-06-21 18:45:25 +05:30
Laurent Rineau 2288225448 Massive update of CMake policies to version 3.23 2022-05-06 09:34:35 +02:00
Sébastien Loriot ab48f63e30 update latest cmake version tested 2021-11-09 10:58:47 +01:00
Sébastien Loriot 262a04cef2 remove useless POLICY setting 2021-11-09 10:19:14 +01:00
Sébastien Loriot 58181afcdb remove useless include directives 2021-11-09 10:16:12 +01:00
Sébastien Loriot fb6f703b55 IO namespace for files in IO directories 2021-05-04 14:36:06 +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
Sébastien Loriot bc161f2ae9 Merge 'CGAL-Eigen3_support-5.2' 2021-01-15 10:59:20 +01:00
Sébastien Loriot f4935dc199 Merge branch 'CGAL-Eigen3_support-5.1' 2021-01-15 10:54:02 +01:00
Sébastien Loriot eecb00534e fix macro name to be consistent with find_package 2021-01-15 10:43:34 +01:00
Mael Rouxel-Labbé a28b50efc8 Modify P3M3 example's facet size criterion to avoid unfortunate dent in output
With the previous facet size criterion, the restricted Delauany has an
unfortunate choice of restricted facets, making it look like an unwanted hole.

See also this comment:
https://github.com/CGAL/cgal/issues/5046#issuecomment-739922611
2020-12-07 14:42:28 +01:00
Maxime Gimeno 9c15f2c9dc Use FeatureSummary in the demo, and remove CGAL_FOUND 2020-08-04 12:46:17 +02:00
Simon Giraudot 421096fd7f Use imported targets everywhere 2020-04-15 14:06:13 +02:00
Sébastien Loriot 8bb22d5b2c extra run of the script to remove tabs and trailing whitespaces
right after the merge of the 5.0 release branch

+ manual fix of the files (indentation was changed in the meantime):
   * Spatial_sorting/include/CGAL/Multiscale_sort.h
   * Spatial_sorting/test/Spatial_sorting/test_multiscale.cpp
2020-03-26 14:26:59 +01:00
Simon Giraudot 6c8fd43ebb Use CGAL_target_use_* mechanism for Eigen, LASLIB, OpenCV, TensorFlow, GLPK, SCIP, Boost IOStreams and Serialization 2020-02-10 11:57:56 +01:00
Laurent Rineau 4fbf00fb8a CMake>=3.13: opt for for new policies up to 3.15 2019-06-19 14:34:59 +02:00
Andreas Fabri 3b1b080330 Do for example what we did for test 2019-01-31 13:39:44 +01:00
Guillaume Damiand 92ba7fa6c9 Update minimum cmake required version in all CMakeLists.txt 2018-10-18 14:49:23 +02:00
Guillaume Damiand 0bd9088b5a Remove all include( ) and include( CGAL_CreateSingleSourceCGALProgram ) in CMakeLists.txt; they are no more required. 2018-10-17 14:17:08 +02:00
Guillaume Damiand 7f09308d33 Remove all include_directories(BEFORE ../../include) in CMakeLists.txt 2018-10-17 13:07:22 +02:00
Mael Rouxel-Labbé f278bb8612 Force usage of Eigen (see https://github.com/CGAL/cgal/pull/3128) 2018-06-21 10:45:26 +02:00
Mael Rouxel-Labbé 056e4f699c Renamed Periodic_3_wrapper to Periodic_3_function_wrapper 2018-06-06 16:57:55 +02:00
Mael Rouxel-Labbé cdda597e4e Renamed the medit output function 2018-06-06 11:58:36 +02:00
Mael Rouxel-Labbé 573f4cf1eb Renamed '..._with_protection' to '..._with_features' 2018-06-05 17:41:18 +02:00
Mael Rouxel-Labbé de369c84ee Fixed P3M3 tests to use the new domain API 2018-06-05 17:28:59 +02:00
Mael Rouxel-Labbé d97d388ef4 Reworked Periodic 3 mesh domain classes
No need to duplicate Labeled_mesh_domain_3 anymore: a wrapper is used.
2018-06-05 14:42:03 +02:00
Mael Rouxel-Labbé 91feb767a6 Moved CGAL/IO/Medit_IO to CGAL/P3M3/IO/File_medit
To have the same name as Mesh_3's, but can't put it in CGAL/IO/ directly...
2017-12-19 15:14:31 +01:00
Mael Rouxel-Labbé fb0eb15f19 Removed useless static variables 2017-12-18 16:50:21 +01:00