Commit Graph

2137 Commits

Author SHA1 Message Date
Laurent Rineau 8c150b865c remove completely the type traits `CGAL::is_complete_v<T>`
- its use would be undefined-behavior if `T` was later defined as complete,
- its implementation was undefined-behavior anyway, because `sizeof` cannot be used on incomplete types
2025-09-30 17:35:12 +02:00
Laurent Rineau b5a180d9df fix the confusion between `handle` and `const_handle` 2025-09-26 10:22:15 +02:00
Laurent Rineau 2a8a32d6ad fix Prevent_deref<Union_find::iterator>
`std::iterator_traits` requires that the iterator type defines all five nested types.

I have also modified the implementation of

```c++
make_prevent_deref_range(Range)
```
2025-09-19 11:53:02 +02:00
Sébastien Loriot 27a7cef2fb Merge pull request #8744 from LeoValque/PMP_triangle_soup_rounding-GF
Add do_snap parameter to PMP::autorefine_triangle_soup
2025-06-26 22:01:58 +02:00
Sébastien Loriot 78cfeacf01 Merge pull request #8186 from lrineau/Triangulation_3-CDT_3-lrineau
New package: CGAL 3D conforming constrained Delaunay triangulations
2025-06-26 21:57:17 +02:00
Laurent Rineau cf77d8022f fix the testsuite of CGAL::is_complete (but keep the #if 0 for now) 2025-06-25 17:37:26 +02:00
Sébastien Loriot f6303dc951 hide sandbox not used 2025-06-24 18:06:13 +02:00
albert-github 3a03540095 Spelling correction
Spelling correction
2025-06-18 10:35:46 +02:00
Jane Tournois fb898e9ab1 remove return_empty_on_invalid_input
and show in an example how to check preconditions
2025-06-13 14:30:05 +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
Jane Tournois 0ab9d3eebf Merge remote-tracking branch 'cgal/master' into Triangulation_3-CDT_3-lrineau
# Conflicts:
#	Installation/CHANGES.md
2025-06-10 11:18:38 +02:00
Jane Tournois 0e3778ff1a face/facet vocabulary
the np is now plc_face_id
where "face" stands for "polygon" as in FaceListGraph for example
2025-06-05 16:10:21 +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
Jane Tournois 19f10ea890 rename plc_face_id to plc_facet_id 2025-06-02 12:49:03 +02:00
Jane Tournois 1f3e98abac replace face_patch_map with plc_face_id
the patches actually correspond to PLC faces,
which must be planar, and do not match the "face patches"
of PMP::isotropic_remeshing for example

+ add a np to CGAL::IO::write_MEDIT(ccdt) to save the corresponding PLC ids,
or just "1" everywhere as patch id
2025-05-30 16:52:00 +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
Léo Valque 99e53acafa put new named_parameter at the good place 2025-05-20 17:39:52 +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
Laurent Rineau 1bdf8e7e10 fix for clang 2025-05-14 10:25:59 +02:00
Laurent Rineau cb5e13ad1f Merge remote-tracking branch 'refs/remotes/lrineau/Triangulation_3-CDT_3-lrineau' into Triangulation_3-CDT_3-lrineau 2025-05-13 17:34:31 +02:00
Laurent Rineau 4b029e69bd Merge branch 'CGAL:master' into Triangulation_3-CDT_3-lrineau 2025-05-13 17:14:39 +02:00
Laurent Rineau fe4193f9eb add a compatibility with std::execution::seq and co 2025-05-13 17:01:00 +02:00
Laurent Rineau eb696b07e8 Merge Triangulation_3-CDT_3-lrineau into lrineau/Triangulation_3-CDT_3-lrineau 2025-05-13 12:19:23 +02:00
Sébastien Loriot f40c64ba13 rename np 2025-05-13 11:26:47 +02:00
Laurent Rineau 1ac837d236 fix warnings about uninitialized default-constructed values 2025-05-12 18:51:01 +02:00
Jane Tournois ebd9ecab58 documentation of check_preconditions, the new NP 2025-05-12 15:47:42 +02: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
Laurent Rineau 05dd421eb0 leftovers after the renaming of Base_with_time_stamp
see commit e1ff8c1773902548350380f7b258c1b218609e30
2025-05-06 17:03:06 +02:00
Wolfgang Bangerth b6af36028d Mark variables declared at global scope in headers as 'inline'. 2025-05-05 05:29:58 -06:00
Jane Tournois b9fd8a3b8e rename Base_with_time_stamp to Triangulation_simplex_base_with_time_stamp 2025-05-02 14:44:36 +02:00
Laurent Rineau 1f7536bfac remove trailing space 2025-04-29 18:30:46 +02:00
Laurent Rineau 0ec75e54ee Merge remote-tracking branch 'refs/remotes/lrineau/Triangulation_3-CDT_3-lrineau' into pr/lrineau/8186 2025-04-29 17:41:39 +02:00
Laurent Rineau 1c4e24621c fix the assertions about nothrow_movable in CDT_3
using Boost implementation of `unordered_map` instead of the std:: version.
2025-04-29 17:41:30 +02:00
Jane Tournois c95bcb5cb7 wip review Mael 2025-04-29 15:17:54 +02:00
Laurent Rineau fa7a62bd69 fix static_assert(std::is_nothrow_move_assignable<CDT_plus_2> 2025-04-29 11:52:40 +02: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