Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CGAL improvement backported from CDT_3 branch #8170

Merged
merged 85 commits into from
May 26, 2024

Conversation

lrineau
Copy link
Member

@lrineau lrineau commented Apr 26, 2024

Summary of Changes

Important various fixes and improvements, from an experimental branch of mine about CDT_3.

  • remove CMake warnings about VTK_USE_FILE (our testsuite tests with VTK-8.2, whereas VTK-9.0 was released four years ago).
  • make Circulator_from_container compatible with ranges (instead of just containers)
  • Hash_map is 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... will be handled later in issue TODO list after PR #8170 CGAL improvement backported from CDT_3 branch #8219
  • breaking changes: add Compare_xy_2 to TriangulationTraits_2 TODO: needs announcement
  • fix Compact_container time stamp feature
  • commits from STL extension: Add a template argument to Prevent_deref for the value type #7410 That is probably a problem, to be fixed. fixed in STL extension: Add a template argument to Prevent_deref for the value type #7410 and then my the merge 70464ea
  • add CGAL::Scope_exit, CGAL::make_scope_exit, for CGAL developers (undocumented)
  • add an overload of make_sorted_pair with only one pair-like argument
  • improve CGAL::IO::Output_ref and oformat
  • perf improvements in TDS_3/include/CGAL/Triangulation_data_structure_3.h (is_edge is 7 times faster)
  • perf improvement in Triangulation_2/include/CGAL/Triangulation_2/internal/Polyline_constraint_hierarchy_2.h (with the use of unordered_flat_map from 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

afabri and others added 30 commits April 25, 2023 14:20
(even if it's not strictly conforming to the C++ standard)
a range for `contexts_begin` and `contexts_end` functions.
- `IO::oformat` can display triangulations vertex handles
  with point, using `With_point_tag{}` as second argument,

- improve the compatibility with C++20 `<format>`: now the precision
  can be specified in the format string.

Backport: master
This enables customization of projection traits for CDT_2s and
facilitates unification with the predicates utilized in
3D triangulations.
That allows to pass an integral offset to the displayed time stamps.

The goal is to set it to -1, to display vertices IDs that are identical
to the input vertices indices of the `Surface_mesh``.
Backport: master, 5.5.x, 5.4.x
@lrineau
Copy link
Member Author

lrineau commented May 21, 2024

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

@lrineau
Copy link
Member Author

lrineau commented May 22, 2024

I have reverted:

I have checked again with CTest locally on the same set of tests, and it passed.

@sloriot
Copy link
Member

sloriot commented May 26, 2024

Successfully tested in 6.0-Ic-251

@sloriot sloriot merged commit abe1bba into CGAL:master May 26, 2024
9 checks passed
@sloriot sloriot deleted the CGAL-improvement_from_CDT_3_branch-GF branch May 26, 2024 15:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants