*mesh_fusing

Connect/merge the proximity regions of 2D elements within a given tolerance.

Syntax

*mesh_fusing destination_entity_type destination_mark_id target_entity_type target_mark_id "string_options"

Type

HyperMesh Tcl Modify

Description

Connect/merge the proximity regions of 2D elements within a given tolerance. Elements are distributed into groups based on their connectivity and component membership. The elements belonging to different components can be in a single group by parameter input. Only are different groups taken as counterparts of proximity/intersection calculation and fusing.

Inputs

destination_entity_type
The destination entity type. Valid values are elems and comps.
destination_mark_id
The ID of the mark containing the destination entities. Valid values are 1 and 2.
All entities can also put on this mark. The actual destination elements will be filtered out automatically by source_mark_id.
source_entity_type
The source entity type. Valid values are elems and comps.
source_mark_id
The ID of the mark containing the source entities. Valid values are 1 and 2.
"string_options"
A string that defines the advanced parameters. Each option/value pair is space separated, and can be specified in any order. The entire string must be enclosed in quotes.
adjust_elem_orientation
0 – Auto normal adjustment is not performed.
1 - For input without intersecting elements in contact regions, auto normal adjustment is performed (default).
break_shell_along_component_boundaries
0 - All elements connected each other are classified as a group.
1 - Element group building stops at component boundaries. This mean that elements in an element group belong to a single component. This is the default.
collapse_source_fusing_lines
0 - Both source and target fusing lines remain (default).
1 - Stitch both source and target fusing lines.
excl_tangent_angle
Used to filter out some elements inside the proximity fusing regions (0, 90].
feature_angle
This value is used to define feature edges on mesh. Default value is 30.0.
fusing_direction
1 - The normal directions of the source elements are used as fusing directions.
0 - Fusing direction are defined automatically (default).
fusing_elems_to_new_comp
0 - Fusing element are stored to the component of source elements (default).
1 - Fusing elements are stored to the new component fusing_elems
2 - Fusing elements are stored to the current component.
keep_fusing_shell
0 - The elements inside source or destination fusing regions are deleted (default).
1 - The elements inside source fusing regions are kept, while the elements inside destination fusing regions are deleted.
2 - The elements inside destination fusing regions are kept, while the elements inside source fusing regions are deleted.
3 - All elements inside fusing regions are kept.
kept_intersect_segment_angle
Used to decide whether some element intersection segments are kept as part of fusing region boundaries (0, 90].
mark_init_prox_elems_only
1 - Only perform the proximity calculations between all source and destination elements, and mark the elements within the input tolerance.
0 - Do not do (default).
num_remesh_layers
-1 - Intersecting elements are split and stitched to obtain conformal element connectivity. No remeshing is performed.
0 - Remesh only the intersecting elements.
> 0 - Remesh the specified number of layers of elements in addition to the intersecting elements.
proximity_tolerance
Used to decide the fusing regions. Only the source elements with this distance to the elements in the destination are considered as candidates in the source fusing region. The corresponding elements in the destination within this distance are the candidates corresponding to mated fusing regions.
snapping_tolerance
Used to decide whether region boundaries are allowed to snap to the free mesh edges when the distance of the boundaries of the fusing regions to free mesh boundaries are less than this value, and operation is possible.
tria_remesh_growth_ratio
Used to specify the triangular element size growth ratio when use_adaptive_tria_remesh is 1.
use_adaptive_tria_remesh
0 - Use the default tria remesher.
1 - Use the adaptive tria remesher.

Examples

To fuse all components, using component "green" as the source:

*createmark components 1 "displayed"
*createmark components 2 "green"
*mesh_fusing components 1 components 2 \
"feature_angle 30.0 \
 break_shell_along_component_boundaries 0 \
 mark_init_prox_elems_only 0 \
 fusing_direction 0 \
 proximity_tolerance 2.0 \
 excl_tangent_angle 65.0 \
 kept_intersect_segment_angle 45.0 \
 keep_fusing_shell 0"

Errors

Incorrect usage results in a Tcl error. To detect errors, you can use the catch command:
if { [ catch {command_name...} ] } {
   # Handle error
}

Version History

2019