*collisioncheck_temp

Performs a collision detection.

Syntax

*collisioncheck_temp mark_id_int_elems mark_id_pene_elems mark_id_int_surfs mark_id_pene_surfs mark_id_pene_nodes self_check reserved1 ?pair_angle? ?store_segments? ?mark_adjoining? ?topo_feature_angle? ?pair_results?

Type

HyperMesh Tcl Modify

Description

Performs a collision detection using the input entities defined by hm_collisionentitycreate. This must be preceded by hm_collisioninit and one or two calls to hm_collisionentitycreate. Multiple calls to this API can be made to perform different detections.

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

Inputs

The inputs are the same as hm_collisioncheck except for:

pair_results
If set to 0, detailed pair results are not calculated and none of the hm_collisionget* APIs can be used (default, same as hm_collisioncheck).
If set to 1, detailed pair results are calculated and the hm_collisionget* andhm_collisionwriteresultsfile APIs can be used (same as hm_collisioncheck).
If set to 2, additional collision result entities are created that can be rendered in the collision browser or used as input of other commands like *collisionfix_temp (option not available in hm_collisioncheck).
If set to 3, only the collision result entities are created (for browser , *collisionfix_temp...), but not the detailed pair results (for hm_collisionget*). This option is not available for hm_collisioncheck, and is only available for the collirad engine.
Note that hm_collisionend does not delete any collision result entities. The deletion must be handled using *deletemark.

Example

To check intersections and penetrations of comps 1001 and 1002, using the nodes of comp 1002 against the elements of comp 1001 for the penetration check, creating only collision result entities:

*createmark comps 1 1001
*createmark comps 2 1002
hm_collisioninit [hm_collisiongetconfig collirad]
hm_collisionentitycreate comps 1 0 1 0.0 0 0 0 0 1
hm_collisionentitycreate comps 2 0 1 0.0 0 0 0 0 2
*collisioncheck_temp 1 1 0 0 1 0 0 90.0 0 0 0.0 3
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