Commit Graph

4714 Commits

Author SHA1 Message Date
Sebastien Loriot 636368ed8f
Always init time_stamp to -2 (#8714)
It is not clear to me that this is the right thing to do:
- it is done for some classes
- but in some test, a comment mention that it should be uninitialized
(the test works if init to -1 but not to 0).
- Base_time_stamper is doing an init to -2
2025-02-12 19:40:27 +01:00
Sebastien Loriot 14b83f0d3e
boost::tie -> std::tie (#8715) 2025-02-12 19:36:19 +01:00
Sebastien Loriot e871025f36
update our CMake supported versions to ...3.31 (#8727)
## Summary of Changes

Update our CMake supported versions to ...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.
```

## Release Management

* Affected package(s): all cmake scripts
* License and copyright ownership: maintenance by GF
2025-02-07 14:03:47 +01:00
albert-github 26c3e9cd21 Spelling correction
Spelling correction
2025-02-05 10:28:46 +01:00
Sebastien Loriot 54bfdfe04d
Mesh 3 : initial_points_generator parameter for make_mesh_3 point initialization (#7798)
## Summary of Changes

Added a `initial_points_generator` parameter in make_mesh_3.
With this parameter, we can use a custom functor when initializing the
C3t3 complex.
This functor must follow the
[Initial_points_generator](https://cgal.github.io/7798/v0/Mesh_3/classInitialPointsGenerator.html)
concept.

Tasks:
 - [x] Add `initial_points_generator` parameter in `make_mesh_3`
 - [x] Make an example
 - [x] Write `Construct_initial_points_labeled_image` into a header
- [x] Make `initialize_triangulation_from_labeled_image` use
`Construct_initial_points_labeled_image`
- [x] Change definition of concept `InitialPointsGenerator` to output
`std::tuple<MeshDomain::Point_3, int dimension, MeshDomain::Index>`
(instead of `std::pair<MeshDomain::Point_3, MeshDomain::Index>`)
 - [x] Make it pass checks
 - [x] Document `initial_points_generator` parameter in `make_mesh_3`
 - [x] Document `Construct_initial_points_labeled_image` header
 - [x] Document example
- [x] Delete `initialize_triangulation_from_labeled_image` and
`initialize_triangulation_from_gray_image`
- [x] Make an example of labelled and gray image initialisation with the
parameter or the old custom initialization.
 - [x] Make small feature page
- [x] add `Construct_initial_points_gray_image.h`, similar to
`Construct_initial_points_labeled_image.h`
 - [x] Maybe add a test ?
- [x] announce in `CHANGES.md`, see
https://github.com/CGAL/cgal/pull/7798#issuecomment-2082701644

## Release Management

* Affected package(s): Mesh_3
* Issue(s) solved (if any): 
  * fix #922
  * fix #7469 
  * discussion #7537
  * previous closed PR #7757
* Feature/Small Feature (if any):
[Mesh_3_initial_points_generator_parameter](https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Mesh_3_initial_points_generator_parameter)
* Link to compiled documentation
[*here*](https://cgal.github.io/7798/v4/Manual/index.html):
*
[make_mesh_3](https://cgal.github.io/7798/v4/Mesh_3/group__PkgMesh3Functions.html#gac8599a0c967075f740bf8e2e92c4770e)
has been modified to receive the parameters :
*
[initial_points_generator](https://cgal.github.io/7798/v4/Mesh_3/group__PkgMesh3Parameters.html#gaf53777b83f1b2f3e7d49275dbab6e46b)
*
[initial_points](https://cgal.github.io/7798/v4/Mesh_3/group__PkgMesh3Parameters.html#gae94f38c6cd23cce45a55608e881a546a)
* The
[InitialPointsGenerator](https://cgal.github.io/7798/v4/Mesh_3/classInitialPointsGenerator.html)
concept that the functor must be a model of.
* A model of this concept :
[Construct_initial_points_labeled_image](https://cgal.github.io/7798/v4/Mesh_3/structCGAL_1_1Construct__initial__points__labeled__image.html)
* License and copyright ownership:
2025-02-05 08:29:06 +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
Laurent Rineau fad5e30a54 initialize to -2, to use the debugging assertions 2025-01-31 18:09:07 +01:00
Sébastien Loriot 107f3696dc boost::tie -> std::tie 2025-01-24 14:20:00 +01:00
Sébastien Loriot eb0da467ed always init time_stamp to -1 2025-01-24 11:08:34 +01:00
Laurent Rineau 1d6e3056b7 typo 2025-01-20 16:59:47 +01:00
Jane Tournois 1950235653 remove extra point 2025-01-20 16:28:36 +01:00
Jane Tournois c161fc1ccf with the point, snippet can't be found 2025-01-20 09:48:53 +01:00
Jane Tournois bc64faaab3 Laurent's review 2025-01-17 16:22:24 +01:00
Jane Tournois 7e3aa09f2a complete move file 2024-12-19 22:03:28 +01:00
Jane Tournois a98101aa75 move tuple_like_helpers.h to STL_Extension to avoid dependency on Mesh_3 2024-12-19 17:38:14 +01:00
Jane Tournois 84e55c3982 fix include 2024-12-19 17:23:57 +01:00
Jane Tournois 2ed54dfa3a add constructors documentation 2024-12-19 17:17:30 +01:00
Jane Tournois 1a4cc658f3 wip apply Laurent's reviews 2024-12-19 16:53:49 +01:00
Jane Tournois 7f4e5b7e84 make doc more clear 2024-12-19 12:45:29 +01:00
Laurent Rineau 2496122707 fix missing fix 2024-12-19 12:22:00 +01:00
Jane Tournois 7e5b9eec9b rename concept with _3 postfix 2024-12-19 12:04:10 +01:00
Jane Tournois 740863cb02 doc review 2024-12-19 11:50:10 +01:00
Laurent Rineau 51b9c4a4b2 cleanup 2024-12-18 18:50:02 +01:00
Laurent Rineau 9ef32fb832 remove memory leaks with VTK objects 2024-12-18 18:25:55 +01:00
Laurent Rineau 8e5fab0c98 allow the initial points generator to be non-const
A lot of type erasure was necessary.
2024-12-18 16:45:25 +01:00
Laurent Rineau eecff9d71a add initial_points to the list of available functors for mesh initialization 2024-12-18 13:48:21 +01:00
Laurent Rineau e2d11a0fc5 allow a range as parameter
The preview implementation enforced the use of a full container.
2024-12-18 13:44:54 +01:00
Laurent Rineau 820762da52 proposal for a rewrite using a lamba expression as the point generator 2024-12-18 11:00:55 +01:00
Laurent Rineau 9803ab49dc add test of initial_points_generator with a generator generating tuple-like object 2024-12-17 18:37:29 +01:00
Laurent Rineau 79ebe7aa4d minor fixes 2024-12-17 18:35:00 +01:00
Laurent Rineau 5c70d487a1 actually allow tuple-like objects, and test that feature 2024-12-17 18:27:13 +01:00
Sebastien Loriot 166681a6ce
Periodic_3_mesh_3: Avoid Making Copies (#8639)
## Summary of Changes

Turn several copies into `const&` to avoid allocation of data members of
traits object with multiprecision coordinates. In release mode the gain
is around 10%..

To address the timeouts in the testsuite in Debug mode, I also changed
cell size and approximation error.

## Release Management

* Affected package(s): Periodic_triangulation_3_mesh_3
* License and copyright ownership: unchanged
2024-12-10 16:24:25 +01:00
Andreas Fabri e9775789e5
Apply suggestions from code review
Co-authored-by: Mael <mael.rouxel.labbe@geometryfactory.com>
2024-12-06 14:49:33 +01:00
Sébastien Loriot caf716cf47 Merge remote-tracking branch 'cgal/6.0.x-branch' in master 2024-12-06 09:58:43 +01:00
Jane Tournois 18a0f69ca2 Merge remote-tracking branch 'cgal/master' into Mesh-3-rework-make-mesh-point-initialization-2-aclement
# Conflicts:
#	Installation/CHANGES.md
2024-12-05 10:17:14 +01:00
Andreas Fabri fc0f1977f6 Add a const& 2024-12-03 08:27:37 +00:00
Jane Tournois 47e575b779 remove extra "else" 2024-11-29 10:33:11 +01:00
Andreas Fabri 0261184dee WIP 2024-11-28 14:31:01 +00:00
Jane Tournois 7e1f24e5fb when sizing field is smaller than min_size, return min_size! 2024-11-26 18:08:10 +01:00
Jane Tournois d08d6643e8 Merge remote-tracking branch 'cgal/master' into Mesh-3-rework-make-mesh-point-initialization-2-aclement
# Conflicts:
#	Installation/CHANGES.md
2024-11-07 12:45:40 +01:00
Jane Tournois d5203e3124
doc
Co-authored-by: Andreas Fabri <andreas.fabri@geometryfactory.com>
2024-11-07 09:27:10 +01:00
Sebastien Loriot 13328c335e
fix warning
Co-authored-by: Andreas Fabri <andreas.fabri@geometryfactory.com>
2024-11-06 13:34:52 +01:00
Sébastien Loriot 335f9b381e less or more for the interior 2024-11-05 17:30:02 +01:00
Sébastien Loriot dd334d3f19 Merge pull request #8242 from janetournois/Mesh_3-avoid_tuples-jtournois
Mesh 3 - avoid tuples in internal code
2024-11-05 17:10:09 +01:00
Jane Tournois 75d3d30cb4 fix unused variable warnings and add a const 2024-11-05 10:27:54 +01:00
Jane Tournois f3abf598ed Merge remote-tracking branch 'cgal/master' into Mesh-3-rework-make-mesh-point-initialization-2-aclement
# Conflicts:
#	Mesh_3/examples/Mesh_3/CMakeLists.txt
2024-11-04 12:42:37 +01:00
Jane Tournois f77f9c6847 Merge remote-tracking branch 'cgal/master' into Mesh-3-rework-make-mesh-point-initialization-2-aclement
# Conflicts:
#	Installation/CHANGES.md
2024-10-23 16:35:56 +02:00
Sébastien Loriot aef524f09f remove extra -D 2024-10-23 11:44:27 +02:00
Sébastien Loriot 0833af4680 Merge remote-tracking branch 'cgal/master' into HEAD 2024-10-22 08:21:55 +02:00
Sébastien Loriot fb605cdd39 remove -D that is not compatible with "older" cmake versions 2024-10-22 08:19:49 +02:00