CGAL 5.1 - Tetrahedral Remeshing
|
CGAL::Tetrahedral_remeshing::Remeshing_vertex_base_3
CGAL::Tetrahedral_remeshing::Remeshing_cell_base_3
CGAL::Tetrahedral_remeshing::Remeshing_triangulation_3
Modules | |
Named Parameters for Tetrahedral Remeshing | |
How to use BGL Optional Named Parameters | |
Concepts | |
Classes | |
Functions | |
template<typename Traits , typename TDS , typename SLDS , typename NamedParameters > | |
void | CGAL::tetrahedral_isotropic_remeshing (CGAL::Triangulation_3< Traits, TDS, SLDS > &tr, const double &target_edge_length, const NamedParameters &np) |
remeshes a tetrahedral mesh. More... | |
void CGAL::tetrahedral_isotropic_remeshing | ( | CGAL::Triangulation_3< Traits, TDS, SLDS > & | tr, |
const double & | target_edge_length, | ||
const NamedParameters & | np | ||
) |
#include <CGAL/tetrahedral_remeshing.h>
remeshes a tetrahedral mesh.
It is recommended to use CGAL::Tetrahedral_remeshing::Remeshing_triangulation_3
for the first parameter, as it inherits from Triangulation_3
with a TDS
suitable for this function.
This function takes as input a 3-dimensional triangulation and performs a sequence of atomic operations in order to generate as output a high quality mesh with a prescribed uniform density. These atomic operations are performed as follows:
This remeshing function can deal with multi-domains, boundaries, and features. It preserves the geometry of subdomains throughout the remeshing process.
Subdomains are defined by indices that are stored in the cells of the input triangulation, following the MeshCellBase_3
concept (refined by RemeshingCellBase_3
). The surfacic interfaces between subdomains are formed by facets whose two incident cells have different subdomain indices. The edges where three or more subdomains meet form feature polylines, and are considered as constrained edges.
Traits | is the geometric traits, model of RemeshingTriangulationTraits_3 |
TDS | is the triangulation data structure for Triangulation_3 , model of TriangulationDataStructure_3 , with cell base model of RemeshingCellBase_3 and vertex base model of RemeshingVertexBase_3 . |
SLDS | is an optional parameter for Triangulation_3 , that specifies the type of the spatial lock data structure. |
NamedParameters | a sequence of Named Parameters |
tr | the triangulation to be remeshed, of type Triangulation_3<Traits, TDS, SLDS> . Remeshing_triangulation is a helper class that satisfies all the requirements of its template parameters. |
target_edge_length | the uniform target edge length. This parameter provides a mesh density target for the remeshing algorithm. |
np | optional sequence of Named Parameters among the ones listed below |
number_of_iterations | the number of iterations for the full sequence of atomic operations performed (listed in the above description) |
remesh_boundaries | If false , none of the input volume boundaries can be modified. Otherwise, the topology is preserved, but atomic operations can be performed on the surfaces, and along feature polylines, such that boundaries are remeshed. |
edge_is_constrained_map | a property map containing the constrained - or - not status of each edge of tr . A constrained edge can be split or collapsed, but not flipped. |
facet_is_constrained_map | a property map containing the constrained - or - not status of each facet of tr . A constrained facet can be split or collapsed, but not flipped. |
cell_is_selected_map | a property map containing the selected - or - not status for each cell of tr for remeshing. Only selected cells are modified (and possibly their neighbors if surfaces are modified) by remeshing. By default, all cells with a non-zero Subdomain_index are selected. |