*map_symmetric_mesh
Maps a mesh between symmetric source/target surfaces.
Syntax
*map_symmetric_mesh entity_type mark_id_source mark_id_target string_array number_of_strings
Type
HyperMesh Tcl Modify Command
Description
Maps the mesh from source surfaces to target surfaces with an optionally supplied transformation. The transformation can be supplied as a translation, a rotation, or a 4x4 transformation matrix. If not supplied, the transformation is computed internally. The tolerance for associating the mapped mesh to the underlying surface can also be supplied. If not given, the global node tolerance is used instead.
The output information is logged into two global Tcl arguments: g_hw_argc and g_hw_argv. These can be accessed after the execution of the command.
If a transformation was not supplied to the command, the internally computed transformation is logged in terms of translation and rotation. It also contains the general status of the command (whether the surfaces are symmetric or not).
Inputs
- entity_type
- The type of source/target entity. Currently only supported for surfs.
- mark_id_source
- The ID of the source mark of entities. Valid values are 1 and 2.
- mark_id_target
- The ID of the target mark of entities. Valid values are 1 and 2.
- string_array
- The ID of the string array that contains the additional input parameters. The string array is created using the *createstringarray command. This should always be set to 1.
- number_of_strings
- Integer indicating the size (number of strings) in the string array created using *createstringarray.
Example
*createmark surfs 1 10
*createmark surfs 2 20
*createstringarray 2 {{translation: 0 1 0} {rotation: angle :90 axis : 0 1 0 base: 0 0 0}}
*map_symmetric_mesh surfs 1 2 1 2
if { [info exists g_hw_argc] } {
foreach outMessage $g_hw_argv {
puts $outMessage
}
}
*createmark surfs 1 10
*createmark surfs 2 20
*map_symmetric_mesh surfs 1 2 1 0
*createmark surfs 1 10
*createmark surfs 2 20
*createstringarray 2 "NodeMappingAsLists" "ElementMappingAsLists"
*map_symmetric_mesh surfs 1 2 1 2
set sourceNodeList [hm_getlist nodes 1]
set targetNodeList [hm_getlist nodes 2]
set sourceElemList [hm_getlist elements 1]
set targetElemList [hm_getlist elements 2]
*createmark surfs 1 10
*createmark surfs 2 20
*createstringarray 2 "transformation: 0 0 1 0 0 1 0 0 -1 0 0 0 2.5 0 12.5 1" "tolerance: 0.1"
*map_symmetric_mesh surfs 1 2 1 2
set sourceNodeList [hm_getlist nodes 1]
set targetNodeList [hm_getlist nodes 2]
set sourceElemList [hm_getlist elements 1]
set targetElemList [hm_getlist elements 2]
*createmark surfs 1 10
*createmark surfs 2 20
*createstringarray 2 "tolerance: 0.1"
*map_symmetric_mesh surfs 1 2 1 2
set sourceNodeList [hm_getlist nodes 1]
set targetNodeList [hm_getlist nodes 2]
set sourceElemList [hm_getlist elements 1]
set targetElemList [hm_getlist elements 2]
Errors
if { [ catch {command_name...} ] } {
# Handle error
}
Version History
11.0.101
2019.1 - Added new string_array values tolerance and transformation.