hm_markbyfeature

Selects geometric entities by feature-based parameters.

Syntax

hm_markbyfeature input_mark_id output_mark_id param_string

Type

HyperMesh Tcl Query Command

Description

Put entities on the specified output mark based on entities on the input mark selection and specified feature parameters.

Inputs

input_mark_id
The ID of the input mark. Valid values are 1 and 2.
output_mark_id
The ID of the output mark to put the entities selected by feature. Valid values are 1 and 2.
param_string
This string contain keyword/value pairs, separated by whitespace. Valid keywords are:
feature_mode
This is mandatory input parameter. Valid values are:
  • 1 - Put on output mark lines representing circles. Input mark entity type is lines.
  • 2 - Put on output mark lines representing circles. Input mark entity type is surfaces.
  • 3 - Put on output mark surfaces representing cylinders. Input mark entity type is surfaces.
  • 4 - Put on output mark surfaces representing fillets. Input mark entity type is surfaces.
  • 5 - Put on output mark surfaces representing valve seats. Input mark entity type is surfaces.
  • 6 - Put on output mark surfaces that contain internal discontinuities and high curvature areas. Input mark entity type is surfaces.
min_radius (optional)
This parameter filters output lines or surfaces by minimal curvature radius. Valid values are any value > 0.0, or a value < 0.0 to specify any radius.
max_radius (optional)
This parameter filters output lines or surfaces by maximal curvature radius. Valid values are any value > 0.0, or a value < 0.0 to specify any radius.
internal_only (optional)
Used only for feature_mode 1 or 2. If set to 1, all outer circles on surfaces will be excluded from the output.
closed_cylinder (optional)
Used only for feature_mode 3. If set to 1, all non closed cylinder surfaces will be excluded from the output.
valve_output (optional)
Used only for feature_mode 5. If set to 1, all surfaces representing the cylinder part of a valve seat will be excluded from the output.

Examples

To put on mark 2 all lines representing circles with radius between 1.0 and 15.0:

*createmark lines 1 all
hm_markbyfeature 1 2 "feature_mode 1 min_radius 1.0 max_radius 15.0"

To put on mark 2 all surfaces representing closed cylinders with any radius:

*createmark surfaces 1 all
hm_markbyfeature 1 2 "feature_mode 3 closed_cylinder 1 min_radius -1.0"

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

2019 - Added new feature_mode value 6.