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

[WIP] CGAL 3D conforming constrained Delaunay triangulation #8186

Draft
wants to merge 567 commits into
base: master
Choose a base branch
from

Conversation

lrineau
Copy link
Member

@lrineau lrineau commented May 6, 2024

Summary of Changes

This submission contributes 3D Constrained Delaunay triangulations to CGAL.

TODO list

Release Management

That option allows to use, or not, the previous implementation of the cavity construction, to compare.
That makes `1435440-min2.off` pass.
If the output iterator is a function-output-iterator, then the cell is already
correctly constructed.

Also, rename `fit` to `cit`
That throws an assertion, instead of calling `abort()`.
There was a hole in the cavity: the set of intersecting cells was not simply connected.
There was a sliver, in the interior of the cavity, that was not intersecting the region.
@albert-github
Copy link
Contributor

In the overnight documentation build for the 1.9.6 version I saw:

CDT_3_common_named_parameters.dox-frag:1: warning: Found unknown command '\cgalParamNBegin'
CDT_3_common_named_parameters.dox-frag:2: warning: Found unknown command '\cgalParamDescription'
CDT_3_common_named_parameters.dox-frag:3: warning: Found unknown command '\cgalParamType'
CDT_3_common_named_parameters.dox-frag:4: warning: Found unknown command '\cgalParamDefault'
CDT_3_common_named_parameters.dox-frag:5: warning: Found unknown command '\cgalParamNEnd'

it might be that adding the following

EXTENSION_MAPPING += dox-frag=md

will solve this for the 1.9.6 (and 1.8.13) version.
(the master version of doxygen is probably not having the problem as in the mean time some changes took place in handling the place of the \include{doc})

@afabri
Copy link
Member

afabri commented Feb 13, 2025

it might be that adding the following

EXTENSION_MAPPING += dox-frag=md

will solve this for the 1.9.6 (and 1.8.13) version. (the master version of doxygen is probably not having the problem as in the mean time some changes took place in handling the place of the \include{doc})

In which file?

@albert-github
Copy link
Contributor

Documentation/doc/resources/1.9.6/BaseDoxyfile.in and Documentation/doc/resources/1.8.13/BaseDoxyfile.in

or alternatively in the Doxyfile.in of this project

@afabri
Copy link
Member

afabri commented Feb 13, 2025

At least for VC++, this static_assert(CGAL::is_nothrow_movable_v<CDT_3_impl>); still triggers an error.

@sloriot
Copy link
Member

sloriot commented Feb 13, 2025

I already fixed doxygen

@albert-github
Copy link
Contributor

@sloriot
In which commit did you fix doxygen?
as @afabri also made a commit: af1d9f5

@sloriot
Copy link
Member

sloriot commented Feb 13, 2025

@sloriot In which commit did you fix doxygen? as @afabri also made a commit: af1d9f5

I got rid of the file and copied the 3 lines at the 3 places it was used.

@albert-github
Copy link
Contributor

@sloriot when used in just one place it is probably the better solution., this also means that the fix from @afabri can be removed again.

@afabri
Copy link
Member

afabri commented Feb 14, 2025

Warning

     5>C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\include\ranges(11): warning STL4038: The contents of <ranges> are available only with C++20 or later. [C:\CGAL_ROOT\CGAL-6.1-Ic-87\cmake\platforms\MSVC-2022-Community-Release\test\Constrained_triangulation_3\test_constrained_Delaunay_triangulation_3.vcxproj]
     5>C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\include\format(42): warning STL4038: The contents of <format> are available only with C++20 or later. [C:\CGAL_ROOT\CGAL-6.1-Ic-87\cmake\platforms\MSVC-2022-Community-Release\test\Constrained_triangulation_3\test_constrained_Delaunay_triangulation_3.vcxproj]
     5>C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\include\concepts(12): warning STL4038: The contents of <concepts> are available only with C++20 or later. [C:\CGAL_ROOT\CGAL-6.1-Ic-87\cmake\platforms\MSVC-2022-Community-Release\test\Constrained_triangulation_3\test_constrained_Delaunay_triangulation_3.vcxproj]
     5>C:\CGAL_ROOT\CGAL-6.1-Ic-87\include\CGAL\Conforming_constrained_Delaunay_triangulation_3.h(3613,24): warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data [C:\CGAL_ROOT\CGAL-6.1-Ic-87\cmake\platforms\MSVC-2022-Community-Release\test\Constrained_triangulation_3\test_constrained_Delaunay_triangulation_3.vcxproj]
         (compiling source file '../../../../../test/Constrained_triangulation_3/test_constrained_Delaunay_triangulation_3.cpp')

here

@afabri
Copy link
Member

afabri commented Feb 14, 2025

Warning

/Users/magritte/cgal_root/CGAL-6.1-Ic-87/include/CGAL/Conforming_constrained_Delaunay_triangulation_3.h:782:10: warning: unused variable 'face_patch_map' [-Wunused-variable]
    auto face_patch_map = parameters::choose_parameter(parameters::get_parameter(np, internal_np::face_patch),

here

@sloriot
Copy link
Member

sloriot commented Feb 17, 2025

Tests failing in 6.1-Ic-88

Comment on lines 21 to 22
The problem is described by Cohen-Steiner et al~\cgalCite{cgal:cohen2002conforming},
and by Si~\cgalCite{cgal:si2008cdt3}.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Even though WIP

  • the ~ is a LaTeX sign for a space, I think it is better to use &nbsp; here.


\section CT_3examples Examples
In 3D, constrained triangulations do not always exist. It can be shown using the
example of the Sch�nhardt polyhedra, that requires the addition of Steiner points
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure whether Sch�nhardt is an artifact of GitHub or some strange sign (probably an ö is meant so use ö)

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.

7 participants