cgal
cgal copied to clipboard
CGAL improvement backported from CDT_3 branch
Summary of Changes
Important various fixes and improvements, from an experimental branch of mine about CDT_3.
- remove CMake warnings about
VTK_USE_FILE - make
Circulator_from_containercompatible with ranges (instead of just containers) -
Hash_mapis move-constructible and -assignable - add preliminary support for C++20 concepts and
<format> - [ ] add
Compare_angle_3(Point_3, Point_3, Point_3, Point_3, Point_3, Point_3)(with six points) TODO: needs doc - [ ] breaking changes: add
Compare_xy_2toTriangulationTraits_2TODO: needs announcement - fix
Compact_containertime stamp feature - [ ] commits from #7410 That is probably a problem, to be fixed.
- add
CGAL::Scope_exit,CGAL::make_scope_exit, for CGAL developers (undocumented) - add an overload of
make_sorted_pairwith only one pair-like argument - improve
CGAL::IO::Output_refandoformat - perf improvements in
TDS_3/include/CGAL/Triangulation_data_structure_3.h(is_edgeis 7 times faster) - perf improvement in
Triangulation_2/include/CGAL/Triangulation_2/internal/Polyline_constraint_hierarchy_2.h(with the use ofunordered_flat_mapfrom Boost>=1.80 - less filter failures in
Triangulation_segment_cell_iterator_3 - add
Triangulation_3::is_facet(u, v, w)(without, c, i, j, k)
Release Management
- Affected package(s): Installation, T_2, TDS_2, T_3, TDS_3, SMDS_3, Kernel, STL_Extension, Stream_support
- Feature/Small Feature (if any):
- License and copyright ownership: maintenance by GeometryFactory
Warnings in almost all packages for all MSVC + cezanne, and some fully red lines in 6.0-Ic-238
I have merged #7410 in this branch/PR, then I retested locally (Fedora Linux 40):
% ctest --test-dir build/RelWithDebInfo -j12 -L 'Arr|Triangulation_[23]|SMDS|STL|Mesh_[23]|TDS_[23]|Shape' -j12
Internal ctest changing into directory: /home/lrineau/Git/cgal-master/build/RelWithDebInfo
Test project /home/lrineau/Git/cgal-master/build/RelWithDebInfo
Start 2: check build system
[...]
1105/1105 Test #5231: cleanup of Triangulation_3_Tests ....................................................................................................... Passed 0.01 sec
100% tests passed, 0 tests failed out of 1105
Label Time Summary:
Arrangement_on_surface_2_Demo = 409.72 sec*proc (1 test)
Arrangement_on_surface_2_Examples = 130.53 sec*proc (130 tests)
Arrangement_on_surface_2_Tests = 328.96 sec*proc (347 tests)
Arrangement_on_surface_2_earth_Demo = 65.86 sec*proc (1 test)
CGAL_build_system = 3.68 sec*proc (2 tests)
Installation = 3.68 sec*proc (2 tests)
Mesh_2_Demo = 46.36 sec*proc (2 tests)
Mesh_2_Examples = 12.74 sec*proc (14 tests)
Mesh_2_Tests = 21.56 sec*proc (28 tests)
Mesh_3_Examples = 221.19 sec*proc (70 tests)
Mesh_3_Tests = 247.50 sec*proc (60 tests)
SMDS_3_Examples = 3.91 sec*proc (6 tests)
SMDS_3_Tests = 13.37 sec*proc (16 tests)
STL_Extension_Examples = 9.80 sec*proc (14 tests)
STL_Extension_Tests = 60.14 sec*proc (72 tests)
Shape_detection_Examples = 33.20 sec*proc (28 tests)
Shape_detection_Tests = 106.59 sec*proc (46 tests)
Shape_regularization_Examples = 7.70 sec*proc (12 tests)
Shape_regularization_Tests = 48.01 sec*proc (46 tests)
TDS_2_Tests = 2.07 sec*proc (4 tests)
TDS_3_Examples = 3.27 sec*proc (6 tests)
TDS_3_Tests = 4.34 sec*proc (6 tests)
Triangulation_2_Demo = 132.34 sec*proc (3 tests)
Triangulation_2_Examples = 48.26 sec*proc (54 tests)
Triangulation_2_Tests = 52.82 sec*proc (50 tests)
Triangulation_3_Demo = 102.45 sec*proc (1 test)
Triangulation_3_Examples = 36.88 sec*proc (42 tests)
Triangulation_3_Tests = 67.18 sec*proc (44 tests)
Total Test time (real) = 562.03 sec
I have reverted:
- the fix about the CMake warning on VTK and
VTK_USE_FILE, because it seems we still test with a VTK version 8.2, - and the experiment to make
Segment_3tuple-like, because it is useless, and make Apple Clang emit a dubious warning, that is not easy to work around.
I have checked again with CTest locally on the same set of tests, and it passed.
Successfully tested in 6.0-Ic-251