*fixnarrowsurfaces

Fixes narrow surfaces and surfaces having local narrow regions like tails and necks.

Syntax

*fixnarrowsurfaces entity_type mark_id width_threshold mesh_type fix_flag string_options

Type

HyperMesh Tcl Modify

Description

This command fixes narrow surfaces and surfaces having local narrow regions like tails and necks.

It is intended to eliminate sliver elements while meshing and sometimes to allow meshing surfaces otherwise non-meshable. Different levels of fixes can be provided for different types of meshing.

Inputs

entity_type
The type of entity to consider. Valid values are surfs, solids and comps.
mark_id
The ID of the mark containing the input entities. Valid values are 1 and2.
width_threshold

The width threshold for considering surfaces as narrow. It should be a positive value much smaller than the target element size for meshing of the model.

mesh_type
The targeted mesh type:
  • 0 - Meshing using surface topology. Sliver surfaces, narrow surface tails and necks are identified and corresponding edges are points are self-stitched together. Collapsed surfaces are removed.
  • 1 - Meshing the splines (faces) topology. Sliver surfaces, narrow surface tails and necks are identified and corresponding edges are points are self-stitched together. Collapsed surfaces are removed. Gaps between surfaces and vertices exceeding the geometry_fix_tol are eliminated.
fix_flag

When set to 1, performs geometry topology matching to morph the geometry to close physical gaps caused by stitching.

string_options

An optional input string containing additional input parameters. The data for each input parameter consists of the predefined parameter keyword and the parameter value separated by space characters and /or equality symbol:

parameter_keyword = parameter_value

or

parameter_keyword parameter_value

Supported parameters are:

geometry_fix_tol = tolerance - The maximum gap allowed between edges and vertices, when eliminating geometry gaps for mesh_type 1. If not specified, the value is auto defined.

max_sharp_angle = angle - The corner angle above which the area nearby a surface corner is not considered a local narrow region. Default is 10 degrees.

Example

Find and fix narrow surfaces with a width less than 0.4. Do not eliminate geometry gaps:

*createmark surfs 1 displayed
*fixnarrowsurfaces surfs 1 0.4 0 0 ""

Find and fix narrow surfaces with a width less than 0.4. Eliminate geometry gaps, using an auto-defined tolerance:

*createmark surfs 1 displayed
*fixnarrowsurfaces surfs 1 0.4 1 0 ""

Find and fix narrow surfaces with a width less than 0.4. Eliminate geometry gaps more than 0.02:

*createmark surfs 1 displayed
*fixnarrowsurfaces surfs 1 0.4 1 0 "geometry_fix_tol = 0.02"

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

2019 – Argument five was previously reserved but is now implemented as fix_flag.