cellcomplex.property_topomesh.optimization.property_topomesh_isotropic_remeshing¶
-
cellcomplex.property_topomesh.optimization.property_topomesh_isotropic_remeshing(initial_topomesh, maximal_length=None, minimal_length=None, collapse=False, iterations=1, verbose=False, debug=False, loglevel=0)[source]¶ Perform a global optimization of a triangular PropertyTopomesh
The topomesh is remeshed iteratively by applying only local topological operations and vertex deformation. Based on target minimal and maximal edge lengths, the mesh undergoes a split and collapse optimization, then a pass of edge flip optimization regularizes its topology and a Taubin smoothing its geometry. The process is repeated to perform a global isotropic remeshing of the initial mesh.
- Parameters
input_topomesh (
cellcomplex.property_topomesh.PropertyTopomesh) – The initial structure on which to perform the remeshingmaximal_length (float, optional:) – The edge length above which the edges will be splitted
minimal_length (float, optional) – The edge length under which the edges will be collapsed
collapse (bool) – Whether to use or not the edge collapse optimization
iterations (int) – Number of optimization passes to perform
Note
If no edge length is set, the target edge length l is set to the 8th decile of initial edge length and the heuristic setting minimal_length to 3/4 l and maximal_length to 4/3 l is used.
- Returns
topomesh – The remeshed structure
- Return type
cellcomplex.property_topomesh.PropertyTopomesh
Warning
The PropertyTopomesh must be a triangular topomesh (
cellcomplex.property_topomesh.analysis.is_triangular())