hm_checkproximity
Checks proximity between elements/components.
Syntax
hm_checkproximity entity_type mark_id max_proximity ?mode? ?check_side? ?proximity_scheme? ?proximity_by_edge? ?min_angle_limit? ?max_angle_limit?
Type
HyperMesh Tcl Query Command
Description
Checks proximity between input entities and returns list of entities within the specified proximity. The output depends on the mode argument as defined below.
Inputs
- entity_type
- The type of entity to check. Valid values are elems and comps (only elems in comps are considered).
- mark_id
- The ID of the mark containing the entities to check. Valid values are 1 and 2.
- max_proximity
-
The maximum distance beyond which an entity is not considered.
- mode
- 1 - Global proximity (default)
- check_side
- 1 - Check both sides of elements
- proximity_scheme
- 0 - Checks basic proximity along a ray from the element center along the normal direction.
- proximity_by_edge
- 0 - Ignores proximity for nearby edges (default behavior if not specified).
- min_angle_limit
- If the angle between the proximate element pairs is less than this value, such pairs are not reported.
- max_angle_limit
- If the angle between the proximate element pairs is greater than this value, such pairs are not reported.
Example
To find proximity between all components using a max distance of
2.5:
*createmark comps 1 all
hm_checkproximity comps 1 2.5
{{201 200 199 198 197 196 195 194 225 224 223 222 221 220 219 218} {221 219 220 218 225 223 224 222 197 195 196 194 201 199 200 198}}
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
13.0.110
2019 - Added new optional arguments proximity_scheme and proximity_by_edge. Changed default behavior of API to use proximity_scheme value 1.
2019.1 - Added new optional arguments min_angle_limit and max_angle_limit.