cellcomplex.property_topomesh.topological_operations.topomesh_split_vertex¶
-
cellcomplex.property_topomesh.topological_operations.topomesh_split_vertex(topomesh, pid, new_pid=None, splitting_axis=None, splitting_distance=None)[source]¶ Perform an vertex split operation on a triangular PropertyTopomesh
The vertex split operation replaces a mesh vertex by a pair of vertices linked by an edge, and creates the necessary higher degree elements to ensure to topological consistency of the complex. The split occurs in a given direction, with a given distance, that can both be estimated automatically given the local configuration of the mesh.
>>> •-----•-----• •-----•-----• >>> | \ | / | |\ / \ /| >>> | \ | / | | \ / \ / | >>> •-----•-----• --> •--•-----•--• >>> | / | \ | | / \ / \ | >>> | / | \ | |/ \ / \| >>> •-----•-----• •-----•-----•
- Parameters
topomesh (
cellcomplex.property_topomesh.PropertyTopomesh) – The structure on which to perform the operationpid (unsigned int) – The ID of the vertex element to split
new_pid (unsigned int, optional) – The ID of the new vertex inserted by the split
splitting_axis (
numpy.ndarray, optional) – The 3D direction in which to perform the splitsplitting_distance (:float, optional) – The length of the edge element resulting from the split
- Returns
- Return type
Note
The PropertyTopomesh passed as argument is updated.
Warning
The PropertyTopomesh must be a triangular topomesh (
cellcomplex.property_topomesh.analysis.is_triangular())