*collisioncheck2_temp

Performs a collision detection.

Syntax

*collisioncheck2_temp entity_type mark_id ?config? ?thickness? ?allowable_depth? ?tolerance? ?pair_angle? ?minimum_penetration_depth?

Type

HyperMesh Tcl Modify Command

Description

Performs a collision detection using the provided entities. Creates collision result entities that can be rendered in the UI or used as input to other commands.

Equivalent to calling hm_collisioninit, hm_collisionentitycreate and *collisioncheck_temp with the corresponding input each. Must be followed by a call to hm_collisionend.

Based on the input, the command switches between the collirad collision detection engine (mainly based on Radioss algorithms, provides an automatic fix), which gets selected by default, and the opcode collision detection engine (supports some additional options, but no automatic fix as of now), which gets selected if any option is used which is not supported by the collirad engine.

Note that hm_collisionend does not delete any collision result entities. The deletion must be handled using *deletemark.

This command is a temporary command and may be deprecated in a future release.

Inputs

entity_type
The type of entity to check. Valid values are groups, comps (only elems in comps are considered) and elems.
mark_id
The ID of the mark containing the entities to check. Valid values are 1 and 2.
config
The configuration that defines the collision behavior. This value is obtained by running hm_collisiongetconfig. Default is 0. See hm_collisiongetconfig for the possible options and their compatibilities.
thickness
The assigned thickness or thickness multiplier. Default is 0, which means that element thickness is applied.
allowable_depth
The allowable depth to use when finding and reporting interferences. If specified, config should not contain the intersect_planar option and tolerance should be -1.0. If not specified, this is ignored.
Not supported in the collirad engine, so non-zero input selects the opcode engine
tolerance
The tolerance to use for intersection checks (for hm_collisiongetconfig intersect_planar keyword) or penetration checks (for hm_collisiongetconfig ?penetrat_min_overlap? keyword). If not specified, the default is 1.e-08.
Not supported in the collirad engine, so non-zero input selects the opcode engine
pair_angle
The maximum allowed angle between penetrating pair normals. Meaningful values are 0.0 < angle < 90.0. Other values disable this functionality.
Not supported in the collirad engine, so non-zero input selects the opcode engine.
minimum_penetration_depth
The minimum penetration depth value to be reported. All penetrations with depths below the specified value will not be reported. If not specified, the default is 0.0, which implies that all detected penetrations will be reported.

Example

To check intersections and penetrations of groups 1001 and 1002:

*createmark groups 1 1001 1002
*collisioncheck2_temp groups 1
hm_collisionend

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

2017.1

2020 - Added new option minimum_penetration_depth. Added new entity_type value elems.