Commit Graph

5379 Commits

Author SHA1 Message Date
Andreas Fabri 878aef67bf Replace #pragma once 2025-04-25 12:03:23 +01:00
Sébastien Loriot cb747e8201 Merge pull request #8721 from sloriot/PMP-new_clip
Add refine_with_plane and new fast clip method
2025-04-24 20:43:26 +02:00
Guillaume Damiand b9efd6983c replace macro CGAL_USE_BASIC_VIEWER by CGAL_USE_BASIC_VIEWER_QT 2025-04-17 17:45:10 +02:00
Guillaume Damiand 219ea871d7 copy the parts of gsoc2024-basic_viewer_glfw-tgrillon that concern only the qt basic viewer 2025-04-17 15:55:54 +02:00
Sebastien Loriot 1196ebdf8a more ranges workarounds for Apple clang 2025-04-09 14:45:04 +02:00
Andreas Fabri d128f390fb indentation 2025-04-08 11:53:23 +01:00
Andreas Fabri 7925d2a08b merge master 2025-04-08 11:49:02 +01:00
Andreas Fabri 63b8eb9e30 Change anchors 2025-04-08 10:25:22 +01:00
Andreas Fabri f91cf8ce99 Add to change log 2025-04-08 10:08:20 +01:00
Andreas Fabri b0edde50cf Add to change log 2025-04-08 10:07:56 +01:00
Sébastien Loriot cc77715588 Merge pull request #6849 from JulyCode/gsoc2022-isosurface
Isosurfacing_3 (new package)
2025-04-03 21:41:22 +02:00
Sébastien Loriot 6188aae5e5 Merge pull request #8259 from loic-dubois/Hyperbolic_surface_triangulation_2-dubois
Hyperbolic surface triangulation 2 (new package)
2025-04-03 19:18:58 +02:00
Sébastien Loriot 7ff41a8950 Merge pull request #7837 from hoskillua/gsoc2023
GSoC2023 - ACVD for Simplification & Remeshing
2025-04-03 18:00:57 +02:00
Mael Rouxel-Labbé 55962d76e3 Update CHANGES.md 2025-04-03 16:26:00 +02:00
Sebastien Loriot ede0864914
BGL - add `CGAL::dijkstra_shortest_path(vs, vt, mesh)` (#8724)
## Summary of Changes

computes the shortest path between two vertices, using Dijkstra
algorithm

Todo
- [x] write doc and integrate to 
- [x] add np
- [x] add measure to define what "shortest" means
- [x] add to ref manual top page
- [x] use in demo code

## Release Management

* Affected package(s): BGL
* [Small
feature](https://cgalwiki.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Add_CGAL::shortest_path(vs,_vt))
* Link to compiled documentation
[CGAL::shortest_path_between_two_vertices()](https://cgal.github.io/8724/v0/BGL/group__PkgBGLTraversal.html#ga5627dee8a6fe4d238cb5c91e123aa763)
* License and copyright ownership: unchanged
2025-04-03 16:07:02 +02:00
Mael Rouxel-Labbé 19a0e6e2a7 Update CHANGES.md 2025-04-03 15:54:05 +02:00
Mael Rouxel-Labbé f5f5727d50 Update CHANGES.md 2025-04-03 15:44:50 +02:00
Jane Tournois c1a3b2dc09 merge cgal/master 2025-04-02 07:26:08 +01:00
Sven Oesau e1c6a9365e
Merge branch 'master' into Mesh_3-Poisson_domain-GF 2025-03-31 14:48:20 +02:00
Sebastien Loriot 3483e40b10
Mesh_3 - add `surface_only()` named parameter (#8781)
## Summary of Changes

Add the option `surface_only()` to `make_mesh_3()`, to completely skip
the "refine_cells" part of Mesh_3, and cancel perturbation and
exudation.
@soesau and I noticed that scanning cells, even in the context of
"Surface mesher", takes a lot of useless time.


@soesau you can use this branch for your benchmark

@lrineau do you think `surface_only` should be a member of `Mesher_3` or
a parameter of `Mesher_3::refine_mesh()` (as done here)?

## Release Management

* Affected package(s): Mesh_3
* [Small
Feature](https://cgalwiki.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Mesh_3_surface_only())
Pre-approved by
[User:Sloriot](https://cgalwiki.geometryfactory.com/CGAL/Members/wiki/User:Sloriot)
-- 2025/03/17
* Link to compiled documentation
[make_mesh_3()](https://cgal.github.io/8781/v0/Mesh_3/group__PkgMesh3Functions.html#gac8599a0c967075f740bf8e2e92c4770e)
and
[parameters::surface_only()](https://cgal.github.io/8781/v0/Mesh_3/group__PkgMesh3Parameters.html#gaa2618c09b6117d7caab12dccca16ee58)
* License and copyright ownership: unchanged
2025-03-28 18:23:22 +01:00
Sébastien Loriot 5a83d07e6d Merge remote-tracking branch 'cgal/6.0.x-branch' into master 2025-03-28 18:16:42 +01:00
Sébastien Loriot a3db73dc68 Merge remote-tracking branch 'cgal/5.6.x-branch' into cgal/6.0.x-branch 2025-03-28 18:15:16 +01:00
Sébastien Loriot f3ff704eea Merge pull request #8554 from afabri/PMP-PoissonDiskSampling-GF
Add Weighted Sample Elimination
2025-03-28 18:03:36 +01:00
Sébastien Loriot b99c75acaf rename function 2025-03-27 14:45:11 +01:00
Sébastien Loriot 0e8bfaacc3 take review into account 2025-03-27 14:33:23 +01:00
Laurent Rineau 2b8c2ef36f Merge remote-tracking branch 'cgal/master' into pr/soesau/8771-2 2025-03-26 14:30:50 +01:00
Sébastien Loriot a2556bb9ec update changes for cut_with_plane 2025-03-25 23:53:35 +01:00
Sébastien Loriot d51af86a65 update changes 2025-03-25 23:51:20 +01:00
Sébastien Loriot 546f823b48 replace split with plane with new implementation based on clip_with_plane 2025-03-25 22:25:42 +01:00
Sébastien Loriot 15da6dab19 replace clip with plane with new implementation based on clip_with_plane 2025-03-25 21:41:53 +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 cf301c4d22 Merge pull request #8786 from efifogel/Aos_2-fixes-efif
Fixed do_intersect() of curves (provided by Edkirito).
2025-03-24 11:51:09 +01:00
Sébastien Loriot e463bcaec1 Merge pull request #8713 from efifogel/Aos_2-traits_concept-efif
Aos 2 traits concept efif
2025-03-24 11:45:17 +01:00
Laurent Rineau 6b97b34a10 Merge 'cgal/master' into Triangulation_3-CDT_3-lrineau 2025-03-21 18:01:23 +01:00
Andreas Fabri 2eb0a36383 Add to change log 2025-03-20 10:34:15 +01:00
Sven Oesau f4ae852e85 updated Changed.md
[skip ci]
2025-03-19 11:53:46 +01:00
Laurent Rineau ab56f763cd sort 3rd party libs by name 2025-03-17 14:18:46 +01:00
Sebastien Loriot 5451674075
Aos 2 dcel extension efif (#8710)
## Summary of Changes

The changes fix a bug in the extensions of vertex and halfedge types of
the DCEL when used to instantiate Arrangement_with_history_2 or similar
arrangement classes that derive from Arrangement_2.
Typically, only the face type is extended or all the 3 types (vertex,
halfedge, and face) are extended, and for such extensions we have
dedicated class templates. The bug shows up when trying to extend any
other subset of the 3 types, and apparently, this hasn't been used much
with Arrangement_with_history_2.

## Release Management

* Affected package(s): Arrangement_on_surface_2
* Issue(s) solved (if any): NA
* Feature/Small Feature (if any): NA
* Link to compiled documentation: NA
* License and copyright ownership: TAU
2025-03-17 09:11:49 +01:00
Efi Fogel 30e5d27ffc Added comment of a fix in the 2D Arrangement on Surface package 2025-03-15 12:09:10 +02:00
Jane Tournois b3f438ea51 CHANGES.md 2025-03-13 15:45:43 +01:00
Sven Oesau 9cb7c57345 removing FindEigen3.cmake
as it is outdated and no longer required
2025-03-10 15:56:40 +01:00
Andreas Fabri 6eaeb7a148 merge cgal/master 2025-02-28 08:55:20 +00:00
Sven Oesau 058d7705fa [skip ci] 2025-02-25 13:20:52 +01:00
Sven Oesau e4f420b53a update changes.md
[skip ci]
2025-02-25 13:19:55 +01:00
Sven Oesau 72b6c16fff updated changes.md 2025-02-25 12:42:57 +01:00
Efi Fogel 5ea830d030 Merge branch 'master' into Aos_2-traits_concept-efif 2025-02-18 17:32:57 +02:00
Sébastien Loriot b589c88869 Merge remote-tracking branch 'cgal/master' into gsoc2023-hoskillua 2025-02-13 01:00:12 +01:00
Sébastien Loriot 06b511cc65 Merge pull request #6088 from sloriot/PMP-add_discrete_curvature
Add functions to compute discrete curvatures
2025-02-12 21:22:40 +01:00
Sébastien Loriot de1fb95d15 Merge pull request #8658 from MaelRL/Tr-Document_point-GF
Document `point()` in all triangulations
2025-02-12 21:18:27 +01:00
Sébastien Loriot 9c536ddae6 Merge pull request #8234 from MaelRL/BGL-Add_remove_deg_2_vertex-GF
Add an Euler operation to remove degree 2 vertices
2025-02-12 21:17:43 +01:00
Sebastien Loriot 8836f5e705
Polygon repair using union and intersection (#8510)
## Summary of Changes

Add new repair rules in Polygon_repair package

## Release Management

* Affected package(s): Polygon_repair
* Feature/Small Feature (if any):
[link](https://cgalwiki.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Polygon_repair_union_intersection)
-- **pre-approval 2025/01/03**
* Link to compiled documentation:
[link](https://cgal.geometryfactory.com/~afabri/Repair/Manual/packages.html#PkgPolygonRepair)
* License and copyright ownership: GF
2025-02-12 19:47:30 +01:00
Laurent Rineau 063266f0ac add `CGAL_setup_tl-excepted.cmake` 2025-02-11 18:27:00 +01:00
Laurent Rineau a2571bbab8 Merge remote-tracking branch 'lrineau/CGAL-followup_PR_8170-lrineau' into Triangulation_3-CDT_3-lrineau 2025-02-11 18:26:52 +01:00
Laurent Rineau 4e5fed81de fix a bug when `CGAL_BRANCH_BUILD` is falsy (in testsuite tarballs for example) 2025-02-10 15:08:19 +01:00
Mael b2ea32cafc
Fix typo
Co-authored-by: Laurent Rineau <Laurent.Rineau@cgal.org>
2025-02-10 14:22:54 +01:00
Laurent Rineau 8eefb7f173 Merge branch 'master' into pr/lrineau/8273 2025-02-07 16:10:52 +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
Mael Rouxel-Labbé 4cc3eef67b Update CHANGES.md 2025-02-06 20:17:19 +01:00
Mael Rouxel-Labbé 94bd217b2b Update CHANGES.md 2025-02-06 20:16:43 +01:00
Mael Rouxel-Labbé ad53f4c3ce Update changelog 2025-02-06 20:14:30 +01:00
Laurent Rineau 050677f002 add CMake option CGAL_with_benchmarks 2025-02-06 01:21:42 +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 a45ac3eb69 fix the detection of <format> and std::format 2025-01-29 16:28:48 +01:00
Sébastien Loriot b19515e1f8 Merge remote-tracking branch 'cgal/6.0.x-branch' 2025-01-24 08:09:18 +01:00
Sébastien Loriot 7720caa9dc Merge remote-tracking branch 'cgal/5.6.x-branch' into HEAD 2025-01-24 08:08:33 +01:00
Mael Rouxel-Labbé e86842189e Merge remote-tracking branch 'cgal/master' into Hyperbolic_surface_triangulation_2-dubois 2025-01-23 09:53:45 +01:00
Efi Fogel 017dacaf26 Announced the introduction of the new AosApproximatePointTraits_2 concept 2025-01-22 14:22:47 +02:00
Efi Fogel 898f933d28 Added a comment about a fix of a bug in the Arrangement_on_surface_2 package 2025-01-22 13:26:41 +02:00
Sébastien Loriot d8106aab4b we now use ctest for testing + extra clean up 2025-01-22 11:42:50 +01:00
Andreas Fabri 859479f681 Merge remote-tracking branch 'cgal/master' into Frechet-dev 2025-01-20 15:47:37 +00:00
Mael Rouxel-Labbé 9ec78ace1e Add license for T_OHS_2 2025-01-17 18:43:26 +01:00
Laurent Rineau cf50ad8b13 document the breakng change 2025-01-16 13:47:33 +01:00
Laurent Rineau e03ba91f54 Boost >= 1.74 is now required 2025-01-13 11:36:05 +01:00
Efi Fogel a3d5856c2e Added a note regarding fixes of the Landmark point-location strategy so that it can be applied to arrangements on a sphere 2024-12-17 22:40:11 +02:00
Sébastien Loriot b32558b87e Merge remote-tracking branch 'cgal/master' into gsoc2022-isosurface 2024-12-16 11:47:34 +01:00
Andreas Fabri 927d52e79e Add to changes.md 2024-12-12 09:54:04 +00:00
Andreas Fabri 64cd852ad5 Add to Changes.md 2024-12-09 07:53:43 +00:00
Andreas Fabri fa59e015ff Add to Changes.md 2024-12-09 07:51:36 +00:00
Andreas Fabri 07e98a69b4 Merge remote-tracking branch 'cgal/master' into Frechet-dev 2024-12-09 07:45:25 +00: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
Sébastien Loriot 11640a3946 Merge remote-tracking branch 'cgal/6.0.x-branch' in master 2024-12-04 14:13:01 +01:00
Sebastien Loriot ca8898c156
Aos 2 metadata traits decorators efif (#8592)
## Summary of Changes

Introduces two traits decorators, namely `Arr_tracing_traits_2` and
`Arr_counting_traits_2`, which can be used to extract debugging and
informative metadata about the traits in use while the program is being
executed. They have been part of the CGAL distribution for several years
now . (Probably more than a decade.) I gave it a face lift, wrote the
necessary documentation, and added a small example program called
count_and_trace.cpp.

## Release Management

* Affected package(s): 2D Arrangements (Arrangement_on_surface_2)
* Issue(s) solved (if any): NA
* Feature/Small Feature (if any): Aos 2 Metadata Traits Decorators --
**Pre-approval date 2024/11/12**
* Link to compiled documentation (obligatory for small feature)
[Manual](https://www.cs.tau.ac.il/~efif/doc_output9/Arrangement_on_surface_2/)
* License and copyright ownership: TAU
2024-12-04 14:06:12 +01:00
Laurent Rineau 196f00c34b Merge remote-tracking branch 'cgal/master' into Triangulation_3-CDT_3-lrineau 2024-12-04 11:27:05 +01:00
mbarbier 56f57215b6 Fixing ICPC usage with modern cmake and wrappers
Related to conan's conan-io/conan-center-index#25843

replaced 'fp-model strict' by 'fp-model=strict' https://www.intel.com/content/www/us/en/docs/cpp-compiler/developer-guide-reference/2021-8/fp-model-fp.html
for more compatibility with nvcc. as 'fp-model=strict' will be directly
transmited to the compiler while 'fp-model strict' will have 'strict'
being treated as a file input.

Also added a CXX only filter for newer cmake 3.3+
2024-11-27 09:19:23 +00:00
Laurent Rineau 7ae7f487d8 Merge branch 'master' into Triangulation_3-CDT_3-lrineau 2024-11-22 17:44:41 +01:00
Laurent Rineau da588c9f95 fix a comment in <CGAL/config.h> 2024-11-21 17:02:51 +01:00
Sébastien Loriot c050bb15a3 Merge remote-tracking branch 'cgal/master' 2024-11-15 11:41:07 +01:00
Sebastien Loriot dd6adf68b3
use assume from c++23 when possible (#8597) 2024-11-14 07:42:19 +01:00
Laurent Rineau 02632017a5 Merge remote-tracking branch 'cgal/master' into Triangulation_3-CDT_3-lrineau 2024-11-12 12:33:37 +01:00
Sébastien Loriot 333a0df9d7 also add macro for unreachable 2024-11-08 18:06:42 +01:00
Sébastien Loriot 9f83f94530 assume from c++23 2024-11-08 18:04:24 +01:00
Sébastien Loriot db4404f0cc Merge remote-tracking branch 'cgal/6.0.x-branch' 2024-11-08 16:18:00 +01:00
Laurent Rineau 0d76bb4612 remove QT_NO_KEYWORDS from CGAL::CGAL_Basic_viewer 2024-11-08 16:16:28 +01:00
Jane Tournois 25b89cbd83 fix CHANGES.md 2024-11-07 12:55:12 +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 4215e18a8b fix CHANGES.md (lost by merge f77f9c6847) 2024-11-07 09:37:52 +01:00
Efi Fogel 67ab177f09 Updated the changes file 2024-11-06 17:33:57 +02:00
Sébastien Loriot a02519677a Merge pull request #8400 from afabri/CGAL-remove_RS-GF
Algebraic_kernel_d: Remove RS
2024-11-05 17:06:19 +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