Sébastien Loriot
b66ebf958b
Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch'
2025-10-30 20:23:21 +01:00
Sebastien Loriot
c60cc5049d
Workaround erros with recent gcc ( #9105 )
...
Should fix [those
errors](https://cgal.geometryfactory.com/CGAL/testsuite/CGAL-6.2-Ic-23/Stream_lines_2/TestReport_lrineau_Ubuntu-latest-GCC6-CXX1z.gz )
2025-10-30 20:17:22 +01:00
Sebastien Loriot
80b4d1a1be
Frechet Distance: Fix bugs in Lambda ( #9103 )
...
## Summary of Changes
_Describe what your pull request changes to CGAL (this can be skipped if
it solves an issue already in the tracker or if it is a Feature or Small
Feature submitted to the CGAL Wiki)._
## Release Management
* Affected package(s): Frechet Distance
* License and copyright ownership: unchanged
2025-10-30 20:16:29 +01:00
Sebastien Loriot
adfcc7d102
more verbose
2025-10-21 18:08:22 +02:00
Andreas Fabri
c5b5a54952
cleanup
2025-10-21 16:22:02 +01:00
Andreas Fabri
5085762946
Fix return value
2025-10-21 16:22:02 +01:00
Andreas Fabri
b3cb80760c
Fix
2025-10-21 16:22:02 +01:00
Andreas Fabri
098e05e134
Add debug output
2025-10-21 16:22:02 +01:00
Andreas Fabri
4d6541c3c4
Add testcase that fails
2025-10-21 16:22:02 +01:00
Andreas Fabri
4ed4d096bf
Add testcase that fails
2025-10-21 16:22:02 +01:00
Sébastien Loriot
712464b690
try to please recent gcc
2025-10-21 08:26:34 +02:00
Sébastien Loriot
3bfc5f32f5
Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch'
2025-10-17 11:44:39 +02:00
Sebastien Loriot
b08f0a4aae
Handle case of identical projected points ( #9100 )
...
Do not try to insert constraint if two points are projected onto the
same 2D vertex
2025-10-17 10:06:08 +02:00
Sebastien Loriot
0cca10d79f
fix versions in doc menu ( #9101 )
...
Will avoid an issue if we release 6.1.1 before 6.2
2025-10-17 10:05:25 +02:00
Sébastien Loriot
a507911b09
fix versions in doc menu
2025-10-15 12:20:58 +02:00
Sébastien Loriot
42068f6009
handle case of identical projected points
2025-10-15 11:03:16 +02:00
Sébastien Loriot
3e77bff198
Merge remote-tracking branch 'cgal/6.0.x-branch' into 'cgal/6.1.x-branch'
2025-10-13 09:41:18 +02:00
Sebastien Loriot
754e57ac3c
[OTR2] Deterministic reconstruction ( #9092 )
...
## Summary of Changes
Using timestamps to make iteration through vertices, edges and faces
deterministic
## Release Management
* Affected package(s): Optimal_transportation_reconstruction_2
* Issue(s) solved (if any): fix #8745
2025-10-13 09:33:46 +02:00
Laurent Rineau
10a9d44a10
next version on this branch will be 6.1.1
2025-10-01 16:25:25 +02:00
Sven Oesau
2f6e3defa7
using timestamps to make iteration through vertices, edges and faces deterministic
2025-10-01 13:42:30 +02:00
Sebastien Loriot
b26b07a124
bug-fix CDT_3 ( #9081 )
...
_Please use the following template to help us managing pull requests._
## Summary of Changes
_Describe what your pull request changes to CGAL (this can be skipped if
it solves an issue already in the tracker or if it is a Feature or Small
Feature submitted to the CGAL Wiki)._
## Release Management
* Affected package(s):
* Issue(s) solved (if any): fix #0000 , fix #0000,...
* 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-09-28 17:10:21 +02:00
Sebastien Loriot
2fd9aed0b6
Surface_mesh: Fix collect_garbage() ( #9087 )
...
## Summary of Changes
Fix the function for meshes that are not valid.
## Release Management
* Affected package(s): Surface_mesh
* Issue(s) solved (if any): fix #9086
* License and copyright ownership: unchanged
2025-09-28 17:09:05 +02:00
Sébastien Loriot
1536d9db5d
eof
2025-09-27 08:34:05 +02:00
Sebastien Loriot
9cdaacb7d0
warnings
2025-09-27 08:32:50 +02:00
Andreas Fabri
4176a2a551
Surface_mesh: Fix collect_garbage in case mesh is not valid
2025-09-26 12:57:29 +01:00
Laurent Rineau
b5a180d9df
fix the confusion between `handle` and `const_handle`
2025-09-26 10:22:15 +02:00
Laurent Rineau
757cc8525d
fix a warning
...
```
warning: array subscript 5 is outside array bounds of ‘std::array<const CGAL::Point_3<CGAL::Epick>*, 3> [1]’ [-Warray-bounds=]
```
2025-09-25 16:36:37 +02:00
Laurent Rineau
79cb90d5e7
fix warning
...
```
In constructor ‘constexpr std::pair<_T1, _T2>::pair(_U1&&, _U2&&) [with _U1 = CGAL::Triangle_3<CGAL::Epick>; _U2 = bool; _T1 = CGAL::Triangle_3<CGAL::Epick>; _T2 = bool]’,
inlined from ‘constexpr std::pair<typename std::__strip_reference_wrapper<typename std::decay<_Tp>::type>::__type, typename std::__strip_reference_wrapper<typename std::decay<_Tp2>::type>::__type> std::make_pair(_T1&&, _T2&&) [with _T1 = CGAL::Triangle_3<CGAL::Epick>; _T2 = bool]’ at /usr/include/c++/15/bits/stl_pair.h:1169:72,
inlined from ‘std::pair<CGAL::Triangle_3<CGAL::Epick>, bool> CGAL::Epic_converter<IK>::operator()(const typename IK::Triangle_3&) const [with IK = CGAL::Simple_cartesian<CGAL::Interval_nt<false> >]’ at /mnt/testsuite/include/CGAL/Epic_converter.h:224:28:
/usr/include/c++/15/bits/stl_pair.h:464:11: warning: ‘<unnamed>’ may be used uninitialized [-Wmaybe-uninitialized]
464 | : first(std::forward<_U1>(__x)), second(std::forward<_U2>(__y))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
-> Use the default constructor of the pair, instead of `make_pair`.
2025-09-25 16:28:13 +02:00
Laurent Rineau
7df5c3a7bb
fix warning: captured structured bindings are a C++20 extension [-Wc++20-extensions]
2025-09-25 16:26:13 +02:00
Laurent Rineau
88f9f00922
fix warning -Wstringop-overflow
...
Fix that warning, due to a copy of `tuple<Point, int, int>` in compare operators for `std::sort` and `std::unique`, in `CGAL::Polygon_mesh_processing::autorefine_impl::collect_intersections`.
```
In member function ‘std::__atomic_base<_IntTp>::__int_type std::__atomic_base<_IntTp>::fetch_add(__int_type, std::memory_order) [with _ITp = int]’,
inlined from ‘void CGAL::Handle::incref() const’ at /mnt/testsuite/include/CGAL/Handle.h:87:29,
inlined from ‘CGAL::Handle::Handle(const CGAL::Handle&)’ at /mnt/testsuite/include/CGAL/Handle.h:55:13,
inlined from ‘CGAL::Lazy<CGAL::Point_3<CGAL::Simple_cartesian<CGAL::Interval_nt<false> > >, CGAL::Point_3<CGAL::Simple_cartesian<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> > >, CGAL::Cartesian_converter<CGAL::Simple_cartesian<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >, CGAL::Simple_cartesian<CGAL::Interval_nt<false> >, CGAL::NT_converter<__gmp_expr<__mpq_struct [1], __mpq_struct [1]>, CGAL::Interval_nt<false> > > >::Lazy(const CGAL::Lazy<CGAL::Point_3<CGAL::Simple_cartesian<CGAL::Interval_nt<false> > >, CGAL::Point_3<CGAL::Simple_cartesian<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> > >, CGAL::Cartesian_converter<CGAL::Simple_cartesian<__gmp_expr<__mpq_struct [1], __mpq_struct [1]> >, CGAL::Simple_cartesian<CGAL::Interval_nt<false> >, CGAL::NT_converter<__gmp_expr<__mpq_struct [1], __mpq_struct [1]>, CGAL::Interval_nt<false> > > >&)’ at /mnt/testsuite/include/CGAL/Lazy.h:877:7,
inlined from ‘CGAL::Point_3<CGAL::Epeck>::Point_3(const CGAL::Point_3<CGAL::Epeck>&)’ at /mnt/testsuite/include/CGAL/Point_3.h:30:7,
inlined from ‘std::_Head_base<_Idx, _Head, false>::_Head_base(const std::_Head_base<_Idx, _Head, false>&) [with long unsigned int _Idx = 0; _Head = CGAL::Point_3<CGAL::Epeck>]’ at /usr/include/c++/15/tuple:208:17,
inlined from ‘std::_Tuple_impl<_Idx, _Head, _Tail ...>::_Tuple_impl(const std::_Tuple_impl<_Idx, _Head, _Tail ...>&) [with long unsigned int _Idx = 0; _Head = CGAL::Point_3<CGAL::Epeck>; _Tail = {int, int}]’ at /usr/include/c++/15/tuple:318:17,
inlined from ‘std::tuple< <template-parameter-1-1> >::tuple(const std::tuple< <template-parameter-1-1> >&) [with _Elements = {CGAL::Point_3<CGAL::Epeck>, int, int}]’ at /usr/include/c++/15/tuple:1502:17,
inlined from ‘bool __gnu_cxx::__ops::_Val_comp_iter<_Compare>::operator()(_Value&, _Iterator) [with _Value = std::tuple<CGAL::Point_3<CGAL::Epeck>, int, int>; _Iterator = __gnu_cxx::__normal_iterator<std::tuple<CGAL::Point_3<CGAL::Epeck>, int, int>*, std::vector<std::tuple<CGAL::Point_3<CGAL::Epeck>, int, int> > >; _Compare = CGAL::Polygon_mesh_processing::autorefine_impl::collect_intersections<CGAL::Epeck>(const std::array<CGAL::Point_3<CGAL::Epeck>, 3>&, const std::array<CGAL::Point_3<CGAL::Epeck>, 3>&, std::vector<std::tuple<CGAL::Point_3<CGAL::Epeck>, int, int> >&)::<lambda(auto:82, auto:83)>]’ at /usr/include/c++/15/bits/predefined_ops.h:240:23,
inlined from ‘void std::__unguarded_linear_insert(_RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CGAL::Point_3<CGAL::Epeck>, int, int>*, vector<tuple<CGAL::Point_3<CGAL::Epeck>, int, int> > >; _Compare = __gnu_cxx::__ops::_Val_comp_iter<CGAL::Polygon_mesh_processing::autorefine_impl::collect_intersections<CGAL::Epeck>(const std::array<CGAL::Point_3<CGAL::Epeck>, 3>&, const std::array<CGAL::Point_3<CGAL::Epeck>, 3>&, std::vector<std::tuple<CGAL::Point_3<CGAL::Epeck>, int, int> >&)::<lambda(auto:82, auto:83)> >]’ at /usr/include/c++/15/bits/stl_algo.h:1758:20:
/usr/include/c++/15/bits/atomic_base.h:631:34: warning: ‘unsigned int __atomic_fetch_add_4(volatile void*, unsigned int, int)’ writing 4 bytes into a region of size 0 overflows the destination [-Wstringop-overflow=]
631 | { return __atomic_fetch_add(&_M_i, __i, int(__m)); }
| ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
```
See for example https://cgal.geometryfactory.com/CGAL/testsuite/CGAL-6.2-Ic-6/Constrained_triangulation_3_Examples/TestReport_cgaltest_Fedora-rawhide-Release.gz
2025-09-25 16:25:37 +02:00
Sebastien Loriot
23e624b0e8
Fix the initial edge size in the 2D case ( #9078 )
...
Workaround for #8902 for 6.1 waiting for a better solution
2025-09-24 20:10:53 +02:00
Laurent Rineau
3f088282c5
add comments
...
add comments
2025-09-24 18:32:39 +02:00
Laurent Rineau
44e3994c51
careful when the union-find has only one set
2025-09-24 18:31:20 +02:00
Laurent Rineau
1a2c061364
add another way to reduce to two sets with union-find
2025-09-24 18:29:42 +02:00
Laurent Rineau
f6ebe208e9
extract a member function `detect_edges_and_cells_intersecting_region`
2025-09-24 16:59:32 +02:00
Laurent Rineau
5e80ca60bb
fix when CGAL_CDT_3_CAN_USE_CXX20_FORMAT is false
2025-09-23 21:37:55 +02:00
Laurent Rineau
538c2721b3
add border_facet_above
2025-09-23 21:30:59 +02:00
Laurent Rineau
9a241b2a9d
const-construct facets_of_border
2025-09-23 21:30:59 +02:00
Sébastien Loriot
ca5f64b973
suggestion from @gdamiand
2025-09-23 19:53:23 +02:00
Laurent Rineau
9726fb59bc
const-construct vertex_above
2025-09-23 19:00:03 +02:00
Sébastien Loriot
31901d0197
fix the initial edge size in the 2D case
2025-09-22 16:53:02 +02:00
Laurent Rineau
7267b3a347
refactor the definition of vertex_below_handle
2025-09-19 16:40:58 +02:00
Laurent Rineau
9d08d4087d
missing is_marked
2025-09-19 16:40:12 +02:00
Laurent Rineau
489a9675dd
fix iwyu warnings
2025-09-19 16:39:32 +02:00
Laurent Rineau
92fab37129
add member fcts to handle vertex marks
2025-09-19 16:20:21 +02:00
Laurent Rineau
c5ad5bb113
more concise code
2025-09-19 12:11:28 +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
Laurent Rineau
0b2ebbc23e
extract debug output functions from construct_cavities
2025-09-18 16:57:54 +02:00
Laurent Rineau
125c4b254f
Merge branch '6.0.x-branch'
2025-09-18 11:28:37 +02:00
Laurent Rineau
269fd76b5a
this branch now prepares 6.1 final version
2025-09-18 11:27:36 +02:00