2021.11

#### 4.3Geometry Transforms

Bodies can be modified in Cubit using transform operations, which include align, copy, move, reflect, restore, rotate, and scale. With the exception of the copy operation, transform operations in Cubit do not create new topology, rather they modify the geometry of the specified bodies. ACIS, Mesh Based Geometry and Virtual Geometry representations may be transformed. If the geometric entity has been meshed, the nodes of the mesh will be transformed along with the geometry. To transform the nodes of a mesh as they are written to the Exodus II mesh file without modifying their location within Cubit, see Transforming Mesh Coordinates.

##### 4.3.1Align Command

The align Operation is a combination of the rotate and move Operations. The align Operation will align the surface of a given volume with any other surface in the model, such that the surface centroids are coincident and the normals are pointing either in the same or opposite direction (depending on their initial alignment). The align Operation can also align a face of a volume with the xy, yz, and xz planes and the vertices of a volume with the x, y, and z axes.

To use the Align Operation

1. On the Commmand Panel, click on Geometry and then Volume.

2. Click on the Transform action button.

3. Select Align from the drop-down menu.

4. Enter the appropriate values for Volume ID(s), Surface ID and With Surface ID. This can also be done using the Pick Widget function.

5. Click Apply.

The first align command above will transform the specified volumes by computing a transformation that would align the first surface with the second surface such that the surface centroids are coincident and the normals are pointing either in the same or opposite direction (depending on their initial alignment). The first surface need not be in the specified volumes.

Align Volume <id_range> Surface <surface_id> with Surface <surface_id>[reverse][include_merged] [preview]

The second form of the align command either aligns a face of a volume or two vertices (forming a direction) with the xy, yz, and xz planes or the x, y, and z axes. If the [reverse] option is specified, the resulting alignment is flipped 180 degrees.

Align Volume <id_range> {Surface <surface_id>| Vertex <vertex_id>} {{X|Y|Z Axis}|{XY|XZ|YZ plane}} [reverse][include_merged][preview]

The third form of the command is a rotational alignment, where the specified entities are rotated about the specified axis, where the angle of rotation is the angle between the first and second locations with respect to the axis. This transformation is useful for aligning surfaces in preparation for geometry decomposition and aligning models for axis-symmetric analysis. If the [include_merged] option is used, all entities that are merged with the specified volume will be included in the align transformation also.

Align Volume <id_range> Location {options} with Location {options} about Axis {options} [include_merged] [preview]

The fourth form of the command uses vertex pairs to define the transformation. The first pair of vertices define a translation so that the source and target vertices are coincident (i.e.,the source is moved to the target). The optional second pair of vertices define a rotation such that the source and target vertices are all collinear after the transformation. The optional third pair of vertices define a rotation such that all the source and target vertices will be coplanar. If the target vertices happen to be moved as a result of the alignment, the source vertices are moved such that they align with the original coordinates of the target vertices.

After the alignment, the first vertex pair will be coincident, the collinear vertex pair will be collinear, and the third vertex pair will be coplanar.

{Body|Volume|Surface|Curve|Vertex|Group} <id_range> Align Using Vertex <source_id> <target_id> [Collinear Vertex <source_id> <target_id> [Coplanar Vertex <source_id> <target_id>] ] [include_merged]

##### 4.3.1.1Align (3 Step)

Beginning with Cubit 16.0, the command panel Align (3 Step) is included in the GUI. This new functionality is accessed via the command panel user interface in Cubit 16.0 and via the command panel and the command line in subsequent versions of Cubit.

Figure 135:

This functionality is available for volumes, surfaces, curves, and vertices.

• In the first two vertex pickwidgets specify two vertices to align. The source vertex will be moved to align with the target vertex (target vertex is unchanged).

• In the [optional] second two vertex pickwidgets specify two vertices that will be collinear after the translation and rotation. The source vertex will be rotated about the translation target vertex (rotation target vertex is unchanged).

• In the [optional] third two vertex pickwidgets, specify two vertices that, when combined with the translation and rotation vertices, define source and target planes to align. The source vertex will be rotated to align with the target plane (target vertex is unchanged).

##### 4.3.2Copy Command

The copy command copies an existing entity to a new entity without modifying the existing entity. A copy can be made of several entities at once, and the resulting new entities can be translated or rotated at the same time. The options for copying entities are:

To copy an entity using Move

1. On the Command Panel, click on Geometry.

2. Click Volume, Surface, Curve, Vertex or Group.

3. Click on the Create action button.

4. Select Copy from the drop-down menu.

5. Select Move from the Copy Type menu.

6. Enter in the appropriate settings.

7. Click Apply.

Vertex <range> Copy [Move [X <dx>] [Y <dy>] [Z <dz>]] [Preview]

Vertex <range> Copy [Move <direction_options> [Distance <val>]] [Preview]

{Body|Volume|Surface|Curve|Vertex|Group} <range> Copy Move [X <dx>] [Y <dy>] [Z <dz>] [Nomesh] [Repeat <value>] [Preview]

{Body|Volume|Surface|Curve|Vertex|Group} <range> Copy Move <direction_options> [Distance <val>] [Nomesh] [Repeat <value>] [Preview]

To copy an entity using Reflect

1. On the Command Panel, click on Geometry.

2. Click Volume, Surface, Curve, Vertex or Group.

3. Click on the Create action button.

4. Select Copy from the drop-down menu.

5. Select Reflect from the Copy Type menu.

6. Enter in the appropriate settings.

7. Click Apply.

{Body|Volume|Surface|Curve|Vertex|Group} <range> Copy Reflect {X|Y|Z} [Nomesh] [Preview]

{Body|Volume|Surface|Curve|Vertex|Group} <range> Copy Reflect [Vertex <v1_id> [Vertex] <v2_id] [Nomesh] [Preview]

{Body|Volume|Surface|Curve} <range> Copy Reflect <x> <y> <z> [Nomesh] [Preview]

To copy an entity using Rotate

1. On the Command Panel, click on Geometry.

2. Click Volume, Surface, Curve, Vertex or Group.

3. Click on the Create action button.

4. Select Copy from the drop-down menu.

5. Select Rotate from the Copy Type menu.

6. Enter in the appropriate settings.

7. Click Apply.

{Body|Volume|Surface|Curve} <range> Copy Rotate <angle> About {X|Y|Z} [Repeat <value>] [Nomesh] [Preview]

{Body|Volume|Surface|Curve} <range> Copy Rotate <angle> About <x> <y> <z> [Nomesh] [Repeat <value>] [Repeat <value>] [Preview]

To copy an entity using Scale

1. On the Command Panel, click on Geometry.

2. Click Volume, Surface, Curve, Vertex or Group.

3. Click on the Create action button.

4. Select Copy from the drop-down menu.

5. Select Scale from the Copy Type menu.

6. Enter in the appropriate settings.

7. Click Apply.

{Body|Volume|Surface|Curve} <range> Copy Scale <scale> | X <val> Y <val> Z <val> [About Vertex <id>] [Nomesh][Repeat <value>] [Preview]

If the copy command is used to generate new entities, a copy of the original mesh generated in the original entity will also be copied directly onto the new entity unless the nomesh option is used.

Several of the commands include the repeat token. If that token is used the command will repeat itself value times.

This is currently limited to copies that do not interact with adjacent geometry through non-manifold topology. For details on mesh copies, see the Mesh Duplication documentation.

##### 4.3.3Move Command

The move command moves a body, volume, free surface, free curve or free vertex by a specified offset.

To Move an Entity

1. On the Command Panel, click on Geometry.

2. Click Volume, Surface, Curve, Vertex or Group.

3. Click on the Transform action button.

4. Select Move from the drop-down menu.

5. Enter in the appropriate settings.

6. Click Apply.

Vertex <id_range> [Move [X <dx>] [Y <dy>] [Z <dz>]] [Copy] [Preview]

Vertex <id_range> Move <direction_options< [Distance <val>] [Copy] [Preview]

{Body|Volume|Surface|Curve|Vertex|Group} <id_range> [Move [X <dx>] [Y <dy>] [Z <dz>]] [Copy [Nomesh]] [Preview]

{Body|Volume|Surface|Curve|Vertex|Group} <id_range> Move <direction_options> [Distance <val>] [Copy [Nomesh]] [Preview]

where <dx> <dy> <dz> and <distance> represent relative offsets in the major axis directions. If the copy option is specified, a copy is made and the copy is moved by the specified offset. The nomesh option will copy and move only the geometry.

These forms of the Move command will only work on free surfaces and free curves. To move a curve or surface that is part of a higher-order entity, the {Move {entity} ...} command is used.

##### 4.3.3.1Moving Other Geometric Entities

It is also possible to move bodies by specifying one of its child entities. For example, a body can by moved by specifying one of its curves. However, if a lower-order entity is moved, the parent body and all related entities will also be moved. The commands for moving bodies using a child entity are given below. Alternatively, the tweak command can be used to move curves and surfaces without moving the parent body.

To Move an Entity

1. On the Command Panel, click on Geometry.

2. Click Volume, Surface, Curve, Vertex or Group.

3. Click on the Transform action button.

4. Select Move from the drop-down menu.

5. Select General Location from the Select Method menu.

6. Enter in the appropriate settings.

7. Click Apply.

Move {Vertex|Curve|Surface|Volume|Body|Group} <id_range> [Midpoint] Location <x> [<y> [<z>]] [Include_Merged] [Preview]

Move {Vertex|Curve|Surface|Volume|Body|Group} <id_range> Location [Midpoint] [X <val>] [Y <val>] [Z <val>] [Except [X] [Y] [Z]] [Include_Merged] [Preview]

Move {Vertex|Curve|Surface|Volume|Body|Group} <id_range> Normal to Surface <id> Distance <val> [Include_Merged] [Preview]

Move {Vertex|Curve|Surface|Volume|Body|Group} <id_range> [Midpoint] General Location <location_options> [Except [X] [Y] [Z]] [Include_Merged] [Preview]

The first form of the command will move the entity to an absolute location. If moving a group, the centroid of the group is moved to that location. The second form will move the entity by a relative distance in any of the xyz axis directions. "Except" is used to preserve the x, y, or z plane in which the center of the entity lies. The third form of the command will move the body along an axis defined by the outward-facing surface normal of another surface. The fourth form of the command uses general location parsing to move the entity.

##### 4.3.3.2Moving Bodies Relative to Other Geometric Entities

It is also possible to move bodies relative to other geometric entities in the model. The following command takes as arguments two geometric entities. The first entity is the one to move. The second entity is where it will be moved. In both cases, the midpoints of the specified entity are used to determine the distance and direction of the move. In the case of groups, centroids are used. "Except" is used to preserve the x, y, or z plane in which the center of the entity lies.

Move {Vertex|Curve|Surface|Volume|Body|Group} <id_range> [Midpoint] Location {Vertex|Curve|Surface|Volume|Body|Group} <id> [Midpoint] [Except [X] [Y] [Z]] [Include_Merged] [Preview]

##### 4.3.3.3Moving Merged Entities

The easiest way to move merged entities is by adding the include_merged keyword to the command. All entities that are merged with the specified entities will move together.

The only other way that merged entities can be moved is by including each of the merged entities in the entity list.

##### 4.3.3.4Move Undo

The Undo option allows a user to reverse the most recent move. This command will only work for the Move {entity} commands, and not the {Entity} Move commands. The syntax is:

Move Undo

##### 4.3.4Scale Command

The scale command resizes an entity (body, volume, surface, or curve) by a scaling factor. The scaling factor may be a constant, or may differ in the x, y, and z directions. The entity chosen will be scaled about the point or vertex indicated. If no point or vertex is entered, it will be scaled about the origin. Any mesh on the object will be scaled too, unless the nomesh keyword is used.

To Scale an Entity

1. On the Command Panel, click on Geometry.

2. Click Volume, Surface, Curve, Vertex or Group.

3. Click on the Transform action button.

4. Select Scale from the drop-down menu.

5. Enter in the appropriate settings.

6. Click Apply.

{Body|Volume|Surface|Curve} <id_range> Scale {<scale> | x <val> y <val> z <val>} [About {<x> <y> <z> | Vertex <id>}] [Nomesh] [Copy [Repeat <value>] [Group_Results]] [Preview]

If the copy option is specified, a copy of the entity is made and scaled the specified amount. Use the repeat option to create multiple copies.

##### 4.3.5Rotate Command

The rotate command rotates a body about a given axis without adding any new geometry. If the Angle or any Components are not specified they are defaulted to be zero.

To Rotate an Entity

1. On the Command Panel, click on Geometry.

2. Click Volume, Surface, Curve, Vertex or Group.

3. Click on the Transform action button.

4. Select Rotate from the drop-down menu.

5. Enter in the appropriate settings.

6. Click Apply.

Body <range> [Copy] Rotate <angle> About {X|Y|Z} [Preview]

Body <range> [Copy] Rotate <angle> About <x-comp> <y-comp> <z-comp> [Preview]

Rotate {Body|Volume|Surface|Curve|Vertex|Group} <id_range> about {X|Y|Z|<xval> <yval> <zval>} Angle <val> [Include_Merged] [Preview]

Rotate {Body|Volume|Surface|Curve|Vertex|Group} <id_range> About Vertex <id> Vertex <id> Angle <val> [Include_Merged] [Preview]

Rotate {Body|Volume|Surface|Curve|Vertex|Group} <id_range> About Normal of Surface <id> Angle <val> [Include_Merged] [Preview]

Rotate {Body|Volume|Surface|Curve|Vertex|Group} <id_range> About Origin <xval> <yval> <zval> Direction <xval> <yval> <zval> Angle <val> [Include_Merged] [Preview]

If the copy option is specified, a copy is made and rotated the specified amount.

##### 4.3.5.1Rotating Merged Entities

The easiest way to rotate merged entities is by adding the include_merged keyword to the command. All entities that are merged with the specified entities will rotate together.

The only other way that merged entities can be rotated is by including each of the merged entities in the entity list.

##### 4.3.6Reflect Command

The reflect command mirrors the body about a plane normal to the vector supplied. The reflect command will destroy the existing body and replace it with the new reflected body, unless the copy option is used.

To Reflect an Entity

1. On the Command Panel, click on Geometry.

2. Click Volume, Surface, Curve, Vertex or Group.

3. Click on the Transform action button.

4. Select Reflect from the drop-down menu.

5. Enter in the appropriate settings.

6. Click Apply.

{Body|Volume|Surface|Curve|Vertex|Group} <range> [Copy] Reflect <x-comp> <y-comp> <z-comp>

{Body|Volume|Surface|Curve|Vertex|Group} <range> [Copy] Reflect {X|Y|Z}