*solid_extrude_from_surfs

Create solids by extruding a set of selected surfaces along a given vector.

Syntax

*solid_extrude_from_surfs mark_id vec_x vec_y vec_z options comp_mode

Type

HyperMesh Tcl Modify Command

Description

This command creates solids by extruding a set of selected surfaces along a given vector.

Inputs

mark_id
The ID of the mark containing the surfaces that you wish to extrude in order to create solids. Valid values are 1 and 2.
vec_x
X-component of the extrusion vector.
vec_y
Y-component of the extrusion vector.
vec_z
Z-component of the extrusion vector.
options
Flags that indicate different modes for the extrusion. Bit values are used and the value is calculated as (Bit0 + 2*Bit1 + 4*Bit2 + 8*Bit3 + 16*Bit4 + 32*Bit5).
Bit0
0 - Only free edges of surfaces are extruded.
1 - Both free and internal edges are extruded, thus creating separate solids from surfaces separated by shared edges.
Bit1
0 - Create solid entities.
1 - Create only boundary surfaces.
Bit2
0 - Surfaces are extruded in one direction (positive or negative based on the surface normal).
1 - Surfaces are extruded in both directions.
Bit3
0 - Selected surfaces are disconnected from non-selected attached surfaces before creating solids.
1 - Connectivity between selected and non-selected surfaces is preserved.
Bit4
0 - When extrusion is made in both directions (Bit2=1), delete original surfaces.
1 - When extrusion is made in both directions (Bit2=1), keep original surfaces and use them as separating surfaces between created solids.
Bit5
0 - Original selected surfaces become part of created solid boundary.
1 - Copy of original selected surfaces is made before creating solids.
comp_mode
Determines how new solids are distributed into components:
  • 0 - Solids are created in the current component and boundary surfaces are moved to the same component.
  • 1 - Solids are created in the current component, but surfaces remain in their original component.
  • 2 - Solids are created in the same component as the selected surfaces (the result is not predictable if the surfaces are originally in different components).

Example

To create a solid by extrusion of the surface with ID 1, using vector (1,2,3), and creating the solid in the surface’s component:

*createmark surfaces 1 1
*solid_extrude_from_surfs 1 1.0 2.0 3.0 0 2

Errors

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