Commit Graph

2062 Commits

Author SHA1 Message Date
albert-github 3a03540095 Spelling correction
Spelling correction
2025-06-18 10:35:46 +02:00
Sebastien Loriot 9eae964517
Triangulation: filter_iterator (#8899)
## Summary of Changes

The testsuite of
[Triangulation](https://cgal.geometryfactory.com/CGAL/testsuite/summary-6.1-Ic-159.html?package=Triangulation)
has N's for some platforms. The test platforms have in common to use
boost_1_88_0, but with VC++ or clang on Windows I can't reproduce the
error with this version of boost.

In this PR I use the filter_iterator adaptor of CGAL, to see if the
boost filter_iterator is the problem.

## Release Management

* Affected package(s): Triangulation
* License and copyright ownership:  unchanged
2025-06-10 14:58:16 +02:00
Sebastien Loriot 30b3388446
New package: Frechet Distance (#8284)
## Summary of Changes

Add a new package computing the approximate Fréchet distance between two
polylines in dD under Euclidean metric, or decides if the distance is
smaller than a given value.

## Release Management

* Affected package(s): Frechet_distance
* Feature (if any):
[link](https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Frechet_Distance)
* License and copyright ownership:  MPI, GeometryFactory, cnrs(?)

## TODO:
- [x] check branch size (@sloriot)
- [x] Make it work with `Epick_d<Dimension_tag<2>>` @sloriot
2025-06-05 16:08:47 +02:00
Sébastien Loriot 6444b9a0d0 Merge pull request #8890 from afabri/PMP-stitch_deterministic-GF
PMP: Make stitch_borders() deterministic
2025-06-04 14:56:33 +02:00
Sébastien Loriot 503b259c71 fix warning: avoid copy 2025-06-02 19:19:42 +02:00
Laurent Rineau 8145708ae5 Merge remote-tracking branch 'cgal/6.0.x-branch'
Conflicts:
	STL_Extension/include/CGAL/Compact_container.h
	STL_Extension/include/CGAL/Concurrent_compact_container.h
2025-05-30 12:27:15 +02:00
Andreas Fabri 14528266fc WIP for reproducing in the Compact Container testsuite 2025-05-23 10:14:16 +01:00
Sébastien Loriot f3b8f20d00 handle convert between const and non-const iterators 2025-05-22 19:50:06 +02:00
Andreas Fabri 2da6189392 typos 2025-05-22 18:10:43 +01:00
Sébastien Loriot 13609a6966 no need to repeat the package name as it is on the line above 2025-05-22 17:53:41 +02:00
Sébastien Loriot b6163a5e7d missing overload 2025-05-21 09:24:05 +02:00
Sébastien Loriot 2148806957 workaround possible optimisation that would alter the value of the erase_counter
The code is still not legal but works in practise.

fix similar to 5853673267
2025-05-21 08:41:25 +02:00
Sebastien Loriot 8978dde2e5
Mark variables declared at global scope in headers as 'inline'. (#8874)
## Summary of Changes

`const` variables declared at global scope have internal linkage, and so
if they are declared in a header file, they are replicated in every file
that `#include` the header. They also can't be the target of `using`
declarations that exports the variable into a C++20 module. This change
marks a number of variables with `inline`, which gives these variables
external linkage, allows the linker to unify all of these variables
between different `.o` files, and also allows for their use in C++20
modules.

There is a separate question whether these variables could or should be
`constexpr` instead of just `const`. The difference between `constexpr`
and `const` has no effect on linkage, and so in the spirit of taking one
step at a time, this patch does not address the `constexpr` vs `const`
question.

This patch fixes #8871. Related to
https://github.com/dealii/dealii/issues/18071.

## Release Management

* Affected package(s): 5.6.1
* Issue(s) solved (if any): #8871
* License and copyright ownership: Same license as used throughout CGAL.
2025-05-16 13:00:02 +02:00
Andreas Fabri 556d33836f
Apply suggestions from code review
Co-authored-by: Laurent Rineau <Laurent.Rineau@cgal.org>
2025-05-15 07:43:26 +02:00
Andreas Fabri 10fe2f5659 output an address 2025-05-14 15:52:18 +01:00
Andreas Fabri 03734f4f18 Add noop for operator<< for handles of a Polyhedron (and let's improve) 2025-05-14 15:38:22 +01:00
Sébastien Loriot d60f2ce443 Merge remote-tracking branch 'cgal/6.0.x-branch' into `cgal/master` 2025-05-12 14:58:19 +02:00
Sébastien Loriot 190313e12a avoid ambiguous overloads of operator= with optional and variant
was showing up in inheritance of _or_drop_ version
2025-05-12 11:56:36 +02:00
Andreas Fabri 851d03dadb merge master 2025-05-07 09:13:11 +01:00
Wolfgang Bangerth b6af36028d Mark variables declared at global scope in headers as 'inline'. 2025-05-05 05:29:58 -06: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
Sébastien Loriot d5a2d332eb Merge remote-tracking branch 'cgal/5.6.x-branch' into cgal/6.0.x-branch 2025-04-10 18:12:06 +02:00
Sebastien Loriot 051f56967b
Workaround bug in gcc (#8820)
Fixes [these
errors](https://cgal.geometryfactory.com/CGAL/testsuite/CGAL-6.1-Ic-122/Alpha_wrap_3/TestReport_lrineau_Ubuntu-GCC_master_CXX20-Release.gz)

cc @mglisse
2025-04-10 18:07:13 +02:00
Sébastien Loriot 6da7046307 revert change backported that was not correct at this point in time 2025-04-07 11:45:09 +02: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 7ff41a8950 Merge pull request #7837 from hoskillua/gsoc2023
GSoC2023 - ACVD for Simplification & Remeshing
2025-04-03 18:00:57 +02:00
Sébastien Loriot a4170b1fb9 Merge pull request #8586 from MaelRL/Kernel_23-Fix_dangling_ref_in_CC3-GF
Do not rely on result_type definitions in kernels
2025-04-03 16:12:09 +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
Sébastien Loriot 93e8257255 workaround possible optimisation that would alter the value of the erase_counter
The code is still not legal but works in practise.

fix similar to 5853673267
2025-04-03 12:16:27 +02:00
Sébastien Loriot a838073ec7 Merge remote-tracking branch 'cgal/5.6.x-branch' into cgal/6.0.x-branch 2025-03-31 15:31:19 +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
Mael Rouxel-Labbé 691fd789f9 Merge remote-tracking branch 'cgal/master' into gsoc2022-isosurface 2025-03-24 21:34:55 +01:00
Mael Rouxel-Labbé be7de12acb Fix used uninitialized warning 2025-03-23 22:22:33 +01:00
Mael Rouxel-Labbé 25f5f5a548 Replace linear_subdivision with a NP in Loop and Catmull-Clark methods
As to support fixed subdivsion for quad meshes
2025-03-17 16:50:11 +01:00
Mael Rouxel-Labbé f9001833b1 Merge remote-tracking branch 'cgal/master' into Kernel_23-Fix_dangling_ref_in_CC3-GF 2025-03-15 14:09:28 +01:00
Jane Tournois 3a94fcb68a add surface_only() as a named parameter to make_mesh_3()
to completely skip the "refine_cells" part of Mesh_3
2025-03-11 16:58:28 +01:00
Andreas Fabri 6eaeb7a148 merge cgal/master 2025-02-28 08:55:20 +00:00
Sven Oesau 24d44e786b Merge remote-tracking branch 'cgal/master' into PMP-PoissonDiskSampling-GF 2025-02-25 12:24:19 +01:00
Sébastien Loriot 4f9bf703e3 Merge remote-tracking branch 'cgal/6.0.x-branch' in master 2025-02-19 07:19:25 +01:00
Sébastien Loriot f7629fa682 Merge remote-tracking branch 'cgal/5.6.x-branch' into cgal/6.0.x-branch 2025-02-19 07:18:41 +01: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 2d0ffba5b4 rename parameters 2025-02-12 23:50:00 +01:00
Sébastien Loriot 21f615aa25 rename parameters 2025-02-12 22:21:59 +01: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
Sebastien Loriot 14b83f0d3e
boost::tie -> std::tie (#8715) 2025-02-12 19:36:19 +01:00
Andreas Fabri 98b6cf398d change iterator category to bidirectional 2025-02-12 17:48:55 +00:00
Sven Oesau bc97771d6a added documentation
renamed weight_functor to weight_function
changed some default values of named parameters
2025-02-11 22:54:52 +01:00
Sébastien Loriot b1e3ed1e3c add ratio as parameter 2025-02-10 21:57:29 +01:00
Sébastien Loriot e6961ef94c factorize qem metric and non qem metric impl 2025-02-10 21:33:46 +01:00