diff --git a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Tetrahedral_remeshing.txt b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Tetrahedral_remeshing.txt index 0500556f0746..b5430013be8b 100644 --- a/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Tetrahedral_remeshing.txt +++ b/Tetrahedral_remeshing/doc/Tetrahedral_remeshing/Tetrahedral_remeshing.txt @@ -24,6 +24,8 @@ The algorithm results in high-quality uniform isotropic meshes, with the desired mesh density, while preserving the input geometric curve and surface features. +\subsection ssecAlgorithm Remeshing Algorithm + Specific remeshing rules have been designed to satisfy the following criteria. First, the algorithm preserves the geometric complex topology, including multi-material surface patches and polyline features. Polyline features @@ -37,7 +39,7 @@ preserve the input topology of the geometric complex. The tetrahedral remeshing algorithm improves the quality of dihedral angles, while targeting the user-defined uniform sizing field and preserving the -topology of the feature complex, as highlighted by Figure \cgalFigureRef{Remesh_liver}. +topology of the feature complex, as highlighted by \cgalFigureRef{Remesh_liver}. Experimental evidence shows that a higher number of remeshing iterations leads to a mesh with a improved fidelity to the sizing criterion, @@ -50,12 +52,33 @@ Tetrahedral mesh, modified by our uniform tetrahedral remeshing method. dihedral angles are in the interval [12,7; 157.7]. \cgalFigureEnd +\subsection ssecSizing Sizing Field + +Tetrahedral isotropic remeshing algorithm is led by a target sizing field, +that can be either uniform, adaptive, or custom. + +The sizing field establishes the local target edge length for the remeshed +tetrahedra. Two sizing fields are provided: a uniform and a mesh-adaptive sizing field. +With `CGAL::Tetrahedral_remeshing::Uniform_sizing_field`, +all tetrahedra edges are targeted to have equal lengths, +as depicted in Section \secTetRemeshing . +With `CGAL::Tetrahedral_remeshing::Adaptive_remeshing_sizing_field`, +tetrahedra edge lengths remain locally close to the local size of simplices in the input mesh. + +The difference between remeshing with uniform and adaptive +sizing fields is depicted in \cgalFigureRef{uniform_and_adaptive}. + +The same sizing field can be used for initial tetrahedral mesh generation +using the \cgal \ref PkgMesh3 package, and consecutive consistent isotropic remeshing, +as shown by \cgalFigureRef{sphere_sizing_field}. + \section secTetRemeshingAPI API The tetrahedral remeshing algorithm is implemented as a single free function `CGAL::tetrahedral_isotropic_remeshing()` that -takes only two required parameters: the input triangulation, and the desired edge length, +takes only two required parameters: the input triangulation, and the desired edge length +or sizing field, which drives the remeshing process. \ref BGLNamedParameters are used to deal with optional parameters.