*entity_rotate

The input elements, surfaces or solids are rotated about an axis by 360 degrees and the volume that is swept by this rotation is found, with an optional offset value.

Syntax

*entity_rotate mark1=<mark_id> entity_type1=<value> axis=<value> center=<value> ?mark2=<mark_id>? ?entity_type2=<value>? ?create_crosssection=<value>? ?create_spunsolid=<value>? ?offset_dist1=<value>? ?offset_dist2=<value>?

Type

HyperMesh Tcl Modify Command

Description

You have the option to calculate the spun cross-section surface(s) of the volume created by this rotation or the input entities. In addition, if a second set of entities are given by ‘mark2’, the result is found in a way that will not intersect this secondary input, wherever possible.

Creates a profile from the outline of input entities by rotating them around a fixed axis. The input type can be elements, surfaces or solids. The optional argument of offset_dist1 can be used to give a distance value by which the spun outline is offset. If a second set of entities is given in mark2, then the result is found in a way that it will not intersect this second set of input entities by a clearance of offset_dist2, wherever possible. You have the option to create surfaces from this outline or to create solids which represent the volume swept by the rotating input entities in mark1. At least one of the action options create_crosssection or create_spunsolid is expected to be set to 1 for the command to proceed.

Inputs

mark1=<mark_id>
The ID of the mark containing the input entities. Valid values are 1 and 2.
entity_type1=<value>
The entity type of the input in mark1. Valid values are elements, surfaces, and solids.
axis=<value>
Specifies the direction of the spin axis around which the input entities are rotating.
center=<value>
Specifies the position of the spin axis.
mark2=<mark_id>
The ID of the mark containing the input entities. When this input is provided, the calculated result will not intersect these entities, with a clearance of offset_dist2. Valid values are 1 and 2.
entity_type2=<value>
The type of entity in mark2. Valid values are elements, surfaces, and solids.
create_crosssection=<value>
Valid values are 0 and 1. If set to 1, the command creates spun profile surface(s) which are bounded by spun outline(s). The default value is 0.
create_spunsolid=<value>
Valid values are 0 and 1. If set to 1, the command creates solids(s) by spinning the spun profile surface(s) around the given axis. The default value is 0.
offset_dist1=<value>
When a positive offset distance is given, the spun outline is offset by this distance and the output spun profile surfaces or solids are found using this offset outline. The default value is 0.
offset_dist2=<value>
When a positive offset distance is given and additional entities are provided by ‘mark2’, the spun outline is calculated to avoid intersecting entities on mark2 with a clearance distance of offset_dist2 wherever possible. The default value is 0.

Examples

To create a spun solid and its cross-section surface, with offset distance 5.0, by spinning the solids 2 and 3, around z-axis, based at point (2.0, 3.0, 5.0):
*createmark solids 1 2 3
*entity_rotate mark1=1 entity_type1=solids "axis=0.0 0.0 1.0" "center=2.0 3.0 5.0" create_spunsolid=1 create_crosssection=1 offset_dist1=5
To create a spun solid and its cross-section surface, with an offset distance 5.0, by spinning the elements in the part named ‘rotating’, around z-axis, based at point (2.0, 3.0, 5.0), while the spun solid should not be closer than distance of 1.0 to the surfaces in part ‘nonrotating’:
*createmark elems 1 "by module" "rotating"
*createmark surface 2 "by module" "nonrotating"
*entity_rotate mark1=1 entity_type1=elems mark2=2 entity_type2=surfaces "axis=0.0 0.0 1.0" "center=2.0 3.0 5.0" create_spunsolid=1 create_crosssection=1 offset_dist1=5.0 offset_dist2=1.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

2024.1