hm_getedgeloops

Returns surface and element free and non-manifold edge loop entities.

Syntax

hm_getedgeloops entity_type markid=<mark_id> ?looptype=<loop_type>?

Type

HyperMesh Tcl Query

Description

Returns surface and element free and non-manifold edge loop entities. The return is a "list of loops". Each loop is an ordered list of either surface edge or element node IDs that define each loop. The first value in each loop list is the loop type. The remaining values are the ordered node/surface edge IDs defining the loop. If the loop is closed, the first and last ID are the same.

For example:

{1 41 36 4 35 39 40 41} {8 42} {2 37 31 38}

Inputs

entity_type
The type of entity to query. Valid values are surfaces and elements.
markid=<mark_id>
The ID of the mark containing the entities to query. Valid values are 1 and 2.
looptype=<loop_type>
The type of loop types to find. Bit values are used and the value is calculated as (1*Bit0 + 2*Bit1 + 4*Bit2 + 8*Bit3 + 16*Bit4 + 32*Bit5). If not specified, all loop types are returned.
Bit0
0 – Do not consider open free edge loops
1 – Consider open free edge loops
Bit1
0 – Do not consider closed free edge loops
1 – Consider closed free edge loops
Bit2
0 – Do not consider open t-connections
1 – Consider open t-connections
Bit3
0 – Do not consider closed t-connections
1 – Consider closed t-connections
Bit4
0 – Do not consider open x-connections
1 – Consider open x-connections
Bit5
0 – Do not consider closed x-connections
1 – Consider closed x-connections

Examples

To get all edge loops for the displayed surfaces:

*createmark surfs 1 displayed
hm_getedgeloops surfs markid=1

To get all open t-connection (Bit2) and closed t-connection (Bit3) edge loops for the displayed surfaces:

*createmark surfs 1 displayed
hm_getedgeloops surfs markid=1 looptype=12

To get all closed free (Bit1) edge loops for the displayed elements:

*createmark elems 1 displayed
hm_getedgeloops elems markid=1 looptype=2

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

14.0