*morphpositionshapemark

Positions shapes from one part of the mesh to another, scales them, and applies them only to the nodes on the mark.

Syntax

*morphpositionshapemark s_entity_type s_mark_id a_entity_type a_mark_id n1 n2 n3 n4 n5 n6 xs ys zs mode scale tol system_id con

Type

HyperMesh Tcl Modify

Description

This command will position the shapes on s_mark_id from an orientation defined by n1, n2, and n3 to an orientation defined by n4, n5, and n6, scale them in the x, y, and z directions using either the local or global system, and affect only the nodes on a_mark_id. The shapes may be applied to the mesh, created as new shapes, added to existing shapes, or may replace existing shapes.

Inputs

s_entity_type
Must be set to shapes.
s_mark_id
The mark ID of the shapes. Valid values are 1 and 2.
a_entity_type
Must be set to nodes.
a_mark_id
The mark ID for target nodes. Valid values are 1 and 2.
n1 n2 n3
IDs of nodes defining initial position of shape.
n4 n5 n6
IDs of nodes defining final position of shape.
xs ys zs
Scaling factors for the shapes in the x, y, and z directions.
mode
0 – Apply each shape to the mesh
1 – Apply each shape and add the perturbations to the original shape
2 – Apply each shape and overwrite the original shape
3 – Apply each shape and create a new shape or shapes
4 – Create a new shape or shapes but do not apply them to the mesh
scale
0 – Do not scale shapes
1 – Scale shapes
tol
The "envelope" or distance around the translated shape inside which nodes are affected.
system_id
ID of system used for scaling factors.
0 - Global
con
0 – Do not use constraints
1 – Use constraints

Examples

To position a shape from one part of the mesh to another and apply it to the mesh:

*createmark shapes 1 1
*createmark nodes 2 "all"
*morphpositionshapemark shapes 1 nodes 2 11 12 13 21 22 23 1.0 1.0 1.0 0 0 3.0 0 1

To position all shapes from one part of the mesh to another, double them in size, and create new shapes, but only on selected nodes:


*createmark shapes 1 "all"
*createmark nodes 2 1 2 3 4 5 6 7 8 9 10 11 12
*morphpositionshapemark shapes 1 nodes 2 11 12 13 21 22 23 2.0 2.0 2.0 4 1 3.0 0 1

Errors

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

"The original set of nodes do not define a plane." - occurs if n1, n2, and n3 are collinear

"The new set of nodes do not define a plane." - occurs if n4, n5, and n6 are collinear

Version History

10.0