hm_collisiongetconfig
Returns flags to be used for configuration of the collision detection.
Syntax
hm_collisiongetconfig keyword1 ?keyword2? ... ?keywordN?
Type
HyperMesh Tcl Query
Description
Converts keywords into a numerical value for the configuration of the collision detection module. The returned value is used for the config argument to hm_collisioninit or *collisioncheck2_temp.
One or more keywords can be provided. Valid keywords are:
Inputs
The following inputs are applicable to hm_collisioninit and *collisioncheck2_temp:- intersect_planar
- If listed, consider coplanar facets which are partially/fully overlapping, within a given tolerance defined by hm_collisoininit, as intersected.
- penetrat_min_overlap
- If listed, consider only penetrations between two facets if they have an overlap greater than a given tolerance defined by hm_collisioninit (not compatible with the collirad engine).
- collirad
- If listed, switches to the collirad collision detection engine, which is mainly based on Radioss algorithms, and provides an automatic fix.
- constant_gap
- If listed, the thickness argument of *collisioncheck2_temp is used as a constant/uniform thickness. This is equivalent to passing thickness_type 0 to hm_collisionentitycreate.
- edge2edge
- If listed, edge-to-edge penetrations are considered. This is equivalent to the edge_penetration flag in hm_collisionentitycreate.
- intersections
- If listed, intersections are checked.
- neighborhood
- If listed, configures the collirad penetration check to ignore penetrations of neighboring elements due to thicknesses being greater than element sizes. This corresponds to using the Iremgap 2 option in Radioss contact interfaces.
- penetrations
- If listed, penetrations are checked.
- self
- If listed, include self checks in *collisioncheck2_temp. This is equivalent to the self_check flag in hm_collisioncheck.
- thick_reduction
- If listed, configures the collirad penetration check to restrict the thicknesses of the elements to 40% of their size each. This also avoids undesired penetrations of neighboring elements due to thicknesses being greater than element sizes. This corresponds to the behavior of some Radioss contacts.
Example
To configure the collision detection for planar intersections:
set config [hm_collisiongetconfig intersect_planar]
hm_collisioninit $config
Errors
if { [ catch {command_name...} ] } {
# Handle error
}
Version History
14.0
2017.1 - Updated the option descriptions to indicate their support for the opcode vs. collirad engines, and the hm_collisioninit and *collisioncheck2_temp commands. Added constant_gap, edge2edge, intersections, neighborhood, penetrations, self and thick_reduction options for *collisioncheck2_temp.