Commit Graph

768 Commits

Author SHA1 Message Date
Sébastien Loriot cc77715588 Merge pull request #6849 from JulyCode/gsoc2022-isosurface
Isosurfacing_3 (new package)
2025-04-03 21:41:22 +02:00
Sebastien Loriot 3fa6e77002
Mesh_2: Make lloyd_optimize_mesh_2() deterministic (#8768)
## Summary of Changes

Replace a `std::set<Vertex_handle>` by a
`std::set<std::pair<std::size_t,Vertex_handle>>` to make traversing the
set deterministic.
At the same time, do not `erase()` a key, but an `iterator`. 

## Release Management

* Affected package(s): Mesh_2
* Issue(s) solved (if any): fix #8719
* License and copyright ownership: unchanged
2025-03-28 18:04:34 +01:00
Mael Rouxel-Labbé 691fd789f9 Merge remote-tracking branch 'cgal/master' into gsoc2022-isosurface 2025-03-24 21:34:55 +01:00
Sébastien Loriot 7da3375f9e do not use deprecated handle() function 2025-03-24 11:48:32 +01:00
Andreas Fabri 3df849036f warnings 2025-03-18 08:22:46 +01:00
Sébastien Loriot 7d75573270 no tabs 2025-03-14 20:15:09 +01:00
Andreas Fabri b607697dd9 Add test program for the issue 2025-03-14 18:28:04 +01:00
Andreas Fabri 1cecefe1c8 Mesh_2: Fixes of write_VTU 2025-03-07 07:37:28 +00:00
Andreas Fabri bd64af08fd Mesh_2: make lloyd_optimize_mesh_2() deterministic 2025-03-04 16:32:15 +00:00
Sébastien Loriot 043becfe7f Merge pull request #8273 from lrineau/CGAL-followup_PR_8170-lrineau
Improvement backports from CDT_3 branch (Follow-up to PR #8170)
2025-02-12 19:43:35 +01:00
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
Laurent Rineau 8eefb7f173 Merge branch 'master' into pr/lrineau/8273 2025-02-07 16:10:52 +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 eb0da467ed always init time_stamp to -1 2025-01-24 11:08:34 +01:00
Laurent Rineau 2869ad810b fix compilation errors with C++<20 2025-01-15 19:08:01 +01:00
Laurent Rineau eafa97a862 major cleanup of Polyline_constraint_hierarchy_2
- remove all mentions of `Edge` and `Constraint`
- `Subconstraint_iterator` is renamed `Subconstraint_and_contexts_iterator` (because of its value type)
- a new `Subconstraint_iterator`, with value type `Subconstraint`
- a few unused/untested and uncompilable functions are removed from the code
- a lot of internal renamings

== Breaking changes ==

For `Constrained_triangulation_plus_2`, there are a few breaking changes...

- The value type of `subconstraints_begin()`, `subconstraints_end()`, of the range `subconstraints()` has changed to `Subconstraint` (a simple `std::pair` of vertex handles). That is actually a kind of bug-fix, because it was documented as such in the user manual.
- The new member functions `subconstraints_and_contexts_begin()`, `subconstraints_and_contexts_end()`, `subconstraints_and_contexts()` are created get the old value type (`std::pair<const Subconstraint, std::list<Context>*>`).
- A few range types have changed from `CGAL::Iterator_range<It>` to `unspecified_type`, for efficiency reasons.
- Doc fixes.

== Determinism ==

Even if it was not documented, the range `subconstraints()` is deterministic (used by Mesh_2), and `subconstraints_and_contexts()` is not.
2025-01-13 17:06:58 +01:00
Laurent Rineau 93ac1845fa CDT_plus_2 hierarchy: add Edge_iterator, that is deterministic
That uses Boost.STLInterfaces from Boost >= 1.74.
2025-01-13 11:36:05 +01:00
Sébastien Loriot e5807ca048 TWS 2025-01-10 14:45:51 +01:00
Laurent Rineau bc8c1e6594 new allocator type, that allocates randomly on purpose
To debug non-determinism on Linux platforms.
2025-01-08 21:53:44 +01:00
Laurent Rineau b12625f169 fix an error detected by UBSAN 2025-01-08 21:13:43 +01:00
Laurent Rineau aaac2c2dc1 Merge remote-tracking branch 'cgal/master' into pr/lrineau/8273 2025-01-08 11:34:54 +01:00
Sébastien Loriot b32558b87e Merge remote-tracking branch 'cgal/master' into gsoc2022-isosurface 2024-12-16 11:47:34 +01:00
Laurent Rineau 96cd3e6f09 Merge remote-tracking branch 'cgal/master' into pr/afabri/8528 2024-10-17 00:25:24 +02:00
Sven Oesau a06002ab2b Merge remote-tracking branch 'cgal/master' into gsoc2022-isosurface 2024-10-14 14:42:46 +02:00
Andreas Fabri 527569346e CGAL: Modernize CMakeLists.txt 2024-10-08 17:02:41 +01:00
albert-github dd02af92a2 issue #8515 Spelling mistakes found checking `en-GB` to `en-US`
Spelling corrections, `en-GB` -> `en-US`
2024-10-05 11:28:29 +02:00
Andreas Fabri 12468ccf4a Address #8401 2024-08-09 11:32:26 +01:00
Mael Rouxel-Labbé 67aba3fefe Merge remote-tracking branch 'cgal/master' into gsoc2022-isosurface 2024-06-20 10:18:49 +02:00
Laurent Rineau 82b53596fd Mesh_2: sort the sequence tr.subconstraints_begin(), tr.subconstraints_end() 2024-06-13 16:31:32 +02: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
Laurent Rineau 4db6bc6d16 Merge pull request #6967 from gdamiand/gsoc2022-EBVs-Mostafa-ashraf19
GSoC'22: New CGAL's design to handle basic viewers
2024-04-10 18:04:25 +02:00
Mael Rouxel-Labbé e24d521865 Merge remote-tracking branch 'mine/CGAL-fix_dependencies-GF' into gsoc2022-isosurface 2024-04-04 15:08:22 +02:00
Laurent Rineau 120a8c14a3 add missing includes
detected with gcc 14.0.1 from Fedora 40
2024-03-26 11:29:51 +01:00
Mael Rouxel-Labbé 5e38ed54df Fix double "Figure" in doc 2024-03-22 17:33:43 +01:00
Guillaume Damiand 0655006622 Merge with master: now viewers use Qt6 2023-11-29 14:36:38 +01:00
Laurent Rineau 51627e3505 Merge remote-tracking branch 'cgal/master' into CGAL-Qt6-GF
# Conflicts:
#	GraphicsView/demo/Bounding_volumes/CMakeLists.txt
2023-11-01 20:59:44 +01:00
Guillaume Damiand cbe7ef2b40 Merge branch 'master' into gsoc2022-EBVs-Mostafa-ashraf19 2023-10-22 17:18:04 +02:00
Guillaume Damiand a5ee74cb66 Merge branch 'master' into gsoc2022-EBVs-Mostafa-ashraf19 2023-09-29 08:36:37 +02:00
Laurent Rineau 1d29a75c9a iformat/oformat are in CGAL::IO
The calls without the `IO::` namespace are deprecated.
2023-09-25 16:09:41 +02:00
Laurent Rineau 28632f21fc Merge branch 'master' into CGAL-Qt6-GF
# Conflicts:
#	Installation/CHANGES.md
2023-09-14 17:40:05 +02:00
Laurent Rineau b05e1e9e46 Remove UseCGAL.cmake
and our old CMake macros `use_lib` and `use_component`.
2023-09-14 17:32:55 +02:00
Laurent Rineau 48f37a14dc remove occurrences of Qt5 2023-09-14 17:02:21 +02:00
Nicolas Saillant 0d7280ea63 CMakeLists updates for Qt6 2023-09-11 16:10:20 +02:00
Guillaume Damiand 467e55f10d Merge branch 'master' into gsoc2022-EBVs-Mostafa-ashraf19 2023-08-28 14:38:58 +02:00
albert-github ad41766454 issue #7395 Improvement of layout of model relations
Corrected `cgalModels` to `cgalHasModes` inside `cgalHasNodelsBegin` / `cgalHasModelsEnd`
2023-07-18 13:23:37 +02:00
albert-github 4e5578d469 issue #7395 Improvement of layout of model relations
- based on review
2023-07-15 13:12:15 +02:00
Sébastien Loriot 125542eb62 Merge remote-tracking branch 'cgal/master' 2023-07-11 12:59:21 +02:00