*midmesh_extract

Extracts the midmesh of an input geometry.

Syntax

*midmesh_extract entity_type mark_id string_array number_of_strings

Type

HyperMesh Tcl Modify Command

Description

longDescription

Inputs

entity_type
The type of input geometry. Valid values are solids, surfs, comps and elems.
mark_id
The ID of the mark of input entities. Valid values are 1 and 2.
string_array
The ID of the string array that contains the additional optional input parameters. The string array is created using the *createstringarray command. This should always be set to 1.
Note: All parameters are case insensitive, and order insensitive. All parameters are optional, if not supplied, the mentioned defaults will be used.
Valid parameters and their syntax are:
CombineNonManifoldEdgesDistance=<value>
If two non-manifold/sharp edges are in proximity with another edge within the distance given for this argument, they will be merged together at the mid-location.
CombineNonManifoldEdgesFactor=<value>
Triggers the same option as CombineNonManifoldEdgesDistance, but the distance is expressed as a factor of MinimumSize.
A value of 1.0 means the CombineNonManifoldEdgesDistance is same as MinimumSize. A value of 0.5 means the CombineNonManifoldEdgesDistance is half of MinimumSize.
Default 0.5, range [0.0, 1.0].
DefeatureOpeningsFactor=<value>
Triggers the same option as DefeatureOpeningsWidth, but the distance is expressed as a factor of MinimumSize.
A value of 1.0 means the DefeatureOpeningsWidth is same as MinimumSize. A value of 0.5 means the DefeatureOpeningsWidth is half of MinimumSize.
Default 0.5, range [0.0, 1.0].
DefeatureOpeningsWidth=<value>
If a hole/opening is of lesser width that the given value, it will be closed.
DestinationComponent=<value>
Midmesh - All output mesh goes to Midmesh component or to the component whose name is specified in the DestinationComponentName argument. This is the default.
Midmesh.# - For each input geometry, the generated midmeshes are organized into a new Midmesh.# component. # denotes a unique incremental number.
Original - For each input geometry, the generated midmesh is organized back into the input components.
Original.# - For each input geometry, the generated midmeshes are organized into new Orignal.# components.
Current - All generated midmeshes go to the current component.
DestinationComponentName=<name>
The prefix to be used for the new shell element components created for the output mesh. Default is Midmesh
ExtractionSize=<value>
The size at which the midmesh is extracted. Default 2.0.
FlattenConnections=<value>
0 - The default Y shaped connections are retained (default)
1 - The output will be flattened at the connections. Y shaped connections are flattened to T shape. Stepped geometry (One side continuous surface, and opposite side steps) will be captured as continuous surface there by deviating from middle.
2 - The output will be flattened at the connections. Y shaped connections are flattened to T shape. Stepped geometry (one side continuous surface, and opposite side steps) will be captured as stepped, keeping the steps at the middle always.
IgnoreFlatEdges=<value>
0 - No specific treatment done to remove flat bottom edges
1 - Flat bottom edges are not retained in the output
MinimumSize=<value>
The value used for defeaturing the topology based on the factors SupressProximityEdgesFactor, CombineNonManifoldEdgesFactor and DefeatureOpeningsFactor. It is recommended to set this value the same as the minimum allowable element length for your final target mesh. Default is ExtractionSize.
SuppressProximityEdgesDistance=<value>
If a manifold edge is in proximity with another edge within the distance given for this argument, it will be suppressed. Sharp edges are not considered for this operation.
SuppressProximityEdgesFactor=<value>
Triggers the same option as SuppressProximityEdgesDistance, but the distance is expressed as a factor of MinimumSize.
A value of 1.0 means the SuppressProximityEdgesDistance is same as MinimumSize. A value of 0.5 means the SuppressProximityEdgesDistance is half of MinimumSize.
Default 0.5, range [0.0, 1.0].
TargetElementSize=<value>
This value is used for fine tuning certain internal computations to go well with the expectations according to the final target element size. It affects the suppression of flat edges, and edges in proximity. Default is ExtractionSize.
number_of_strings
Integer indicating the size (number of strings) in the string array created using *createstringarray.

Examples

To extract the midmesh of all solids present in the model with element size as 2.0 with SuppressProximityEdgesFactor and CombineNonManifoldEdgesFactor as 0.5:

*createmark solids 1 all
*createstringarray 3 {ElementSize: 2.0} {SuppressProximityEdgesFactor: 0.5} {CombineNonManifoldEdgesFactor: 0.5}
*midmesh_extract solids 1 1 3

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

2019