*morphhandleprojectentityoffset
Morphs a mesh by projecting selected handles on to the selected surfaces or elements.
Syntax
*morphhandleprojectentityoffset h_entity_type h_mark_id e_entity_type e_mark_id extend p_entity_type p_mark_id nproj proj sym con offset
Type
HyperMesh Tcl Modify Command
Description
This command moves each of the selected handles onto the selected surfaces or elements along a direction defined by the projection type. Applying symmetry links, constraints, and an offset are optional. All domains influenced by the selected handles will be morphed accordingly.
If nproj is set to 2, 5, or 6, the shell elements on the mark will be used to determine the projection direction for the handles. If no elements are on the mark, then all shell elements will be used to determine the projection directions.
If symmetry is specified, handles linked through symmetry to those selected will be moved in a way that mirrors the selected handles which may or may not move them to other lines in the model.
Constraints may move the perturbed handles off the selected surfaces or elements after the handles are moved to the entities.
The offset can be set as an absolute amount, an amount added to half the sum of the thickness of the shells touching the handles and the target elements, or an amount multiplied by half the sum of the thickness of the shells touching the handles and the target elements.
Inputs
- h_entity_type
- Must be set to handles.
- h_mark_id
- The ID of the mark containing the handles. Valid values are 1 and 2.
- e_entity_type
- Must be set to surfaces or elements.
- e_mark_id
- The ID of the mark containing the target surfaces or elements. Valid values are 1 and 2.
- extend
- 0 - Disable
- p_entity_type
- Must be set to elements.
- p_mark_id
- The ID of the mark containing the normal elements. Valid values are 1 and 2.
- nproj
- The projection type.
- proj
- The ID of the temporary projection vector.
- sym
- 0 - Ignore symmetry links
- con
- 0 - Ignore constraints
- offset
- The distance the handles will be offset from line (or added to or multiplied by half the thickness of the shells touching the handles and half the thickness of the target elements).
Examples
To project handles to a surface along a vector:
*createmark handles 1 "all"
*createmark surfs 1 12
*createmark elems 2
*createvector 1 1.0 0.0 0.0
*morphhandleprojectentityoffset handles 1 surfs 1 elems 2 0 1 1 1 0.0
To project handles to a mesh normal to the mesh:
*createmark handles 1 "all"
*createmark elems 1 1 2 3 4 5 6
*createmark elems 2
*createvector 1 1.0 0.0 0.0
*morphhandleprojectentityoffset handles 1 elems 1 elems 2 1 1 1 1 0.0
To project handles to a surface normal to the selected elements and offset by the 1.5x the thickness:
*createmark handles 1 "all"
*createmark surfs 1 12
*createmark elems 2 7 8 9 10 11 12
*createvector 1 1.0 0.0 0.0
*morphhandleprojectentityoffset handles 1 surfs 1 elems 2 22 1 1 1 1.5
Errors
if { [ catch {command_name...} ] } {
# Handle error
}
Version History
2022.3