Commit Graph

1831 Commits

Author SHA1 Message Date
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 13609a6966 no need to repeat the package name as it is on the line above 2025-05-22 17:53:41 +02:00
Andreas Fabri 851d03dadb merge master 2025-05-07 09:13:11 +01:00
Sébastien Loriot f975f7e4e0 Merge remote-tracking branch 'cgal/6.0.x-branch' into master 2025-04-16 18:53:38 +02:00
Sébastien Loriot 6a56496c84 Merge remote-tracking branch 'cgal/5.6.x-branch' into cgal/6.0.x-branch 2025-04-16 18:51:44 +02:00
Sebastien Loriot 644f4235dc
Remove Documention bug in to_vector of Segment_3.h (#8846) 2025-04-15 16:44:13 +02:00
lvalque b0dcf8c3f5
Remove Documention bug in to_vector of Segment_3.h 2025-04-15 09:57:05 +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 09564a6d7b do not use result_type 2025-04-03 16:13:27 +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
Sébastien Loriot b6719fc3be Merge remote-tracking branch 'cgal/6.0.x-branch' into cgal/master 2025-04-03 16:09:51 +02:00
Mael Rouxel-Labbé 5ad86a0fb0 eg > e.g. 2025-03-28 21:04:49 +01:00
Mael Rouxel-Labbé e38e29f279 dont > don't 2025-03-28 20:52:22 +01:00
Mael Rouxel-Labbé b4422374a0 Fix Compare_xy_2 for the generic 3D projection traits
The previous implementation defined Compare_xy_2 as
simply Compare_xyz_3. This does define an order
over the projected points, but it has a strong downside:
it ignores the direction of the normal, so its order
can be the opposite of the lexicographical order
would give. This new order is in conflict with
the existing Compare_x_2 and Compare_y_2, which
take the normal's direction into account.

(Also with the Less_x_2, Less_y_2, and Less_xy_2
family, which also exist for the projection traits).
2025-03-28 12:51:07 +01:00
Mael Rouxel-Labbé 0c35489bbe Merge remote-tracking branch 'cgal/master' into Kernel_23-Fix_dangling_ref_in_CC3-GF 2025-03-27 12:28:35 +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é 425cfb5f07 Use coordinates that create a simpler center 2025-03-21 09:23:47 +01:00
Mael Rouxel-Labbé fba95c734a Tolerate numerical errors for kernels without exact constructions 2025-03-20 11:22:04 +01:00
Mael Rouxel-Labbé 4976ca6572 Fix wrong type in doc 2025-03-20 11:17:21 +01:00
Mael Rouxel-Labbé 7bc1bbd842 Add a comment 2025-03-18 12:05:06 +01:00
Sebastien Loriot d24b862fcd
Early exits in compare squared distance to improve performance (#8758)
_Please use the following template to help us managing pull requests._

## Summary of Changes

compare_squared_distance are know wrote specifically for each pair of
objects instead of simply calling compare and squared_distance improving
performance.
Add test and benchmark for compare_squared_distance.
Add global functions to call compare_squared_distance.

## Release Management

* Affected package(s): Distance_3
* Issue(s) solved (if any):
* Feature/Small Feature (if any):
* Link to compiled documentation (obligatory for small feature) [*wrong
link name to be changed*](httpssss://wrong_URL_to_be_changed/Manual/Pkg)
* License and copyright ownership:
2025-03-17 13:52:33 +01:00
Mael Rouxel-Labbé 1ae7960a43 Simplify and enhance Type_mapper
There is also a stronger need because now we really need to map
types whereas before it could rely on result_type's to avoid
some tricky cases like CGAL::Sphere_point
2025-03-16 21:45:23 +01:00
Mael Rouxel-Labbé a98d5149de Remove useless header includes 2025-03-16 13:33:44 +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
Léo Valque 91f29df106 Cleaning of the files, remove useless comments, correct indent and tab 2025-02-28 13:58:12 +01:00
Andreas Fabri 6eaeb7a148 merge cgal/master 2025-02-28 08:55:20 +00:00
Andreas Fabri c716539b2a CGAL: Do not include basic.h in examples 2025-02-23 08:25:11 +00:00
Léo Valque 0436efa118 macro for global_function_distance 2025-02-19 19:26:09 +01:00
Léo Valque d7c9cce0b9 Compare squared distance with point 2025-02-19 12:03:06 +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
Andreas Fabri 295ed81e91 Adress Mael's review and partially the one of Pierre 2025-02-05 11:51:11 +00: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 859479f681 Merge remote-tracking branch 'cgal/master' into Frechet-dev 2025-01-20 15:47:37 +00:00
Mael Rouxel-Labbé 2f84ba4aea Fix compilation 2025-01-17 13:41:44 +01:00
Mael Rouxel-Labbé 06f862eee7 Misc post-merge fixes 2025-01-17 12:27:21 +01:00
Mael Rouxel-Labbé 3b7a4ed21e Merge remote-tracking branch 'cgal/master' into Kernel_23-Fix_dangling_ref_in_CC3-GF 2025-01-16 11:52:34 +01:00
Mael Rouxel-Labbé 1e46c44142 Enable some disabled tests: operator==(Origin, Point_x) now exists 2025-01-16 10:41:47 +01:00
Mael Rouxel-Labbé 98201c6ecc Point_3 is no different from other kernel objects 2025-01-16 10:41:16 +01:00
Mael Rouxel-Labbé 604103d035 Regroup definitions of operator<=> for kernel objects + add missing 2025-01-16 10:39:21 +01:00
Mael Rouxel-Labbé 2f825080d5 Use the kernel's Boolean and enums 2025-01-16 10:37:38 +01:00
Andreas Fabri d1fb0d22d2 Move Bbox_d.h to NewKernel 2025-01-10 15:08:08 +00:00
Andreas Fabri f0c6891fe2 Remove dependency with a forward declaration 2025-01-10 13:17:18 +00:00
Andreas Fabri 2a1ece6969 Add BBox_d 2025-01-10 11:18:38 +00:00
Mael Rouxel-Labbé b8830caa24 Remove superfluous precision 2025-01-08 17:20:20 +01:00
Mael Rouxel-Labbé b7de40afce Update enum_cast<Uncertain> calls to new API 2025-01-08 17:17:55 +01:00
Mael Rouxel-Labbé 7b6886ed17 Misc cleaning 2024-12-20 16:16:26 +01:00
Mael Rouxel-Labbé 9c517a47a2 Fix bad return types 2024-12-20 16:14:40 +01:00
Mael Rouxel-Labbé 4d4549cad6 Get rid of result_type in Kernels + fix some bad return types (wip) 2024-12-20 16:13:35 +01:00
Mael Rouxel-Labbé 778ae1b9c8 Remove unused class 2024-12-20 15:25:03 +01:00
Andreas Fabri 99f514122b Add constructor from Bbox_2/3 2024-12-18 11:06:04 +00:00