Engineering Solutions

Edge Edit panel

Edge Edit panel

Previous topic Next topic Expand/collapse all hidden text  

Edge Edit panel

Previous topic Next topic JavaScript is required for expanding text JavaScript is required for the print function  

Surface Edge Topology


The edge topology helps control the mesh generation for the surfaces and surface boundaries when using the surface automesher. Edges can have one of three states, each of which has a specific color in the rendering graphics:

Free edges (red) indicate that a surface edge is not connected to any other surface edge. The mesh generated across a free edge boundary will not be connected.
Shared edges (green) indicate a boundary between connected surfaces (sometimes referred to as “stitched together”). The mesh across a shared edge will place nodes along the surface edge, and such nodes will be common to the elements on each side of the boundary. Shared edges are further classified as manifold (exactly two surfaces meeting at a common edge) or non-manifold (yellow), where more than two surfaces meet at a common edge. For the sake of simplicity, shared manifold edges are simply referred to as “shared” while shared non-manifold edges are referred to as “non-manifold”.
The third edge topology state is suppressed (rendered in blue), where a manifold shared edge will be disregarded by the meshing process, in effect making a single larger surface out of two individual surfaces.

 

Topology Display in HyperMesh


When entering any panel where the primary function is editing geometry, the surface topology display mode is activated by default. In this mode, the surface edges are colored according to their topology state. The default color assignments are red for free edges, green for shared edges, yellow for non-manifold edges and a blue dotted line for suppressed edges. The color assignment can be changed using the visualization options button, and the surface topology display mode can be set at any time using the geometry display mode button.  Both of these buttons reside in the visualization toolbar.

visualization_panel_surftopo_and_visopts

 

Panel Usage


Each type of edit option for edges is arranged into its own subpanel. You can move freely between subpanels--your work on one subpanel will not be lost if you switch to a different subpanel, then return. However, similar settings will not be shared between subpanels, so for example changing the cleanup tolerance in one subpanel does not change it in any of the others. In some cases, changes will be reflected immediately in your model as you select edges; in others, one or more green command buttons on the right edge of the subpanel can be used to execute the function once all criteria have been specified.

Set the panel mode by selecting the subpanel appropriate to the type of edit you wish to perform.
In the subpanel, choose specific edges, or surfaces whose edges you wish to edit.
In the subpanel, choose input criteria to limit the edges that will be edited, or use the default values.  These criteria act as a filter so that you can select multiple edges or surfaces but only edit edges that meet certain qualifications, such as proximity to one another or length restrictions.

 

Use the interactive image below to see the various options on each subpanel. Mouse over each element to see a brief description.  Click a subpanel to reveal the selection criteria that it contains.

 

Subpanels and Inputs


The Edge Edit panel contains the following subpanels and command buttons:

hmtoggle_arrow1Toggle

This subpanel toggles edges from one state to another. The topology state can be advanced from free to shared to suppressed by clicking with the left mouse button. Conversely, the state can be regressed from suppressed to shared to free by using the right mouse button.

Exactly what state an edge takes on depends on its current state. Adjacent free edges can be advanced to shared edges with the left mouse button, provided the two edges are within the same space based on the cleanup tolerance setting. The tolerance is used to create a search sphere around the point that is clicked. If another free edge is found, it is considered for a pairing. Any paired edges are checked for an appropriate match along their length based on the cleanup tolerance. The shared edge resulting from this toggle operation will be at the location of the free edge that is clicked.

Left-clicking a shared edge will result in a suppressed edge. Left clicking a non-manifold edge has no effect, since the mesh must have nodes along such a boundary.  Right-clicking a suppressed edge reverts that edge to the shared state. Right-clicking a shared edge releases the edge to the free state.

In general, left-clicking reduces the number of edges, while right-clicking increases the number of edges:

mouseClickLeft-24

Convert two free (red) edges to one shared (green) edge.

Convert a shared (green) edge to a suppressed (blue) edge.

Convert one free (red) edge and one shared (green or yellow) edge to a shared non-manifold (yellow) edge.

mouseClickRight-24

Convert a suppressed (blue) edge to a shared (green) edge.

Convert a shared (green) edge to two free (red) edges.

Convert a shared non-manifold (yellow) edge to multiple free (red) edges.

 

Panel Inputs

Input

Action

at cursor: edge

Select the edge.

cleanup tol

This is a value in model units above which separate edges will not be combined, toggled, replaced, or equivalenced.  Edges that are this distance or less from each other will be altered as appropriate to the subpanel, while those further than this distance from each other will remain unchanged.

cleanup_tolerance_example

With tolerance 0.1, the gap (size 0.625) remains. With tolerance 0.7, it closes as the selected edge is toggled to be shared with its nearest neighbor.

 

hmtoggle_arrow1(Un)suppress

Use this subpanel to suppress or unsuppress edges.  Suppressed edges are treated as if they did not exist when meshed using the surface automesher, and their corresponding surfaces and resulting mesh will be  continuous.  However, the edges still remain in the database, and can be unsuppressed again if necessary.

 

Panel Inputs

Input

Action

lines selector

Pick the surface edges to suppress or unsuppress.

break angle

Used to preserve geometric features within the selection; if the break angle between the normals of adjacent surface edges exceeds the set value, the edges will not be suppressed.

For shared edges, this is the maximum tangential angle between two surfaces at the shared edge.  Edges of surfaces exceeding this angle are not suppressed.

break_angle_example

With a Break Angle of 0.1, some of the shared edges are suppressed
(especially on the right side) but many remain.

 

hmtoggle_arrow1Replace

Use this subpanel to move one edge line to the same edge as another, effectively combining the two edges into a shared edge at the location of one of the original edges.

This functionality provides additional control over the toggle function.  Individual selections are made for the line to move and the line to retain. The resulting shared edge will be at the location of the line selected as retained.

The cleanup tolerance setting in this panel defines the maximum distance between the selected lines.

 

Panel Inputs

Input

Action

moved edge: lines selector

Pick the surface edges to suppress or unsuppress.

retained edge: line selector

Pick the edge line to move the other lines to.

cleanup tol

This is a value in model units above which separate edges will not be combined, toggled, replaced, or equivalenced.  Edges that are this distance or less from each other will be altered as appropriate to the subpanel, while those further than this distance from each other will remain unchanged.

cleanup_tolerance_example

With tolerance 0.1, the gap (size 0.625) remains.  With tolerance 0.7, it closes as the selected edge is toggled to be shared with its nearest neighbor.

 

hmtoggle_arrow1Equivalence

Use this subpanel to search for free edges and combine them with a matching edge within the cleanup tolerance. The surfs selector allows selection of surfaces to check using any of the extended selection options.

Selected edges that meet other specified criteria will be equivalenced even if they belong to different components. In the example below, surfaces are selected from components 1 and 2.

equivalence_across_comps_example

 

Panel Inputs

Input

Action

surfs selector

Pick the surface to check.

geometry stitching

The surface stitching options define whether or not free-edge pairs are combined according to the following rules:

by component: selected surfaces will be stitched to neighbor surfaces that belong to the same component. This is the default behavior.
all: selected surfaces will be stitched to all neighboring surfaces, even if those surfaces belong to different components.
attached to selection: selected surfaces will be stitched to surfaces attached to selected surfaces or edges.
selection only: selected surfaces or edges will be stitched only to each other.

cleanup tol

Defines the maximum distance between free surface edges for them to be considered a pair.

This is a value in model units above which separate edges will not be combined, toggled, replaced, or equivalenced.  Edges that are this distance or less from each other will be altered as appropriate to the subpanel, while those further than this distance from each other will remain unchanged.

cleanup_tolerance_example

With tolerance 0.1, the gap (size 0.625) remains.  With tolerance 0.7, it closes  as the selected edge is toggled to be shared with its nearest neighbor.

equiv free edges only

Restricts this operation to free surface edges only. Otherwise, a free edge that matches a shared edge can be combined to form a non-manifold edge.

This option prevents shared edges from being equivalenced; only free edges will be equivalenced.

equivalence_free_edges_only

Here, all surfaces are selected, but only the two free edges on the left are made equivalent with each other.  The shared non-manifold edge on the right remains unchanged.

 

hmtoggle_arrow1Unsplit

Use this subpanel to remove previously created split-lines; that is, lines that have been added to split one surface into multiple surfaces.  This function can also be used to remove closed-edge loops, such as holes in a surface.

Note:The unsplit function removes any edge, either within a single surface or an edge between surfaces that both have the same underlying parent surface. It also tries to find a closed loop of edges to remove. This enables it to remove any closed loop or cutout feature, such as a hole or slot, contained within a surface.

 

Panel Inputs

Input

Action

at cursor: line selector

Selects a single line to unsplit and will carry out the operation immediately upon selection.

multiple edges: lines selector

Allows selection of multiple lines (with extended entity selection) and will carry out the operation upon clicking the green untrim button.

 

hmtoggle_arrow1Edge Fillets

Use this panel to remove fillets from surface edges.

You can replace fillets in one of two ways:

The left side of the panel presents a search and select option to automatically identify surface edge fillets.
The right side presents a trim intersect option in which you manually remove the edge fillet by selecting the fillet endpoints.

 

Both options display on this subpanel, but are mutually exclusive: you may use one or the other, but you cannot use both on the same fillet.  You can, of course, use both types in the same model, just not on the same fillet.

The option to remove fillets can be performed on as many fillets as you wish; all fillets in the model meeting the criteria you specify will be located and selected.  Replacing a fillet with a trim-intersection corner, however, is a manual process that can only be performed on one fillet at a time.

The Search function requires selection of the surfaces to check for edge fillets. The minimum and maximum radius values bound the search to avoid looking for very small or very large fillets. The minimum angle sets a minimum arc length for a fillet to be identified.

Once surfaces have been selected and the search criteria entered, click the find button to identify any edge fillets meeting the search criteria. Fillets will be identified with the letter “F” at the arc center and radial lines indicating the beginning and end points on the surface edge. At this point, the fillets selector is active with all identified fillets pre-selected. Any fillets that you do not wish to remove may be de-selected by right-clicking them in the graphics area.

The remove button extends the surface edges tangentially from the fillet end points until they meet at a hard corner.

edge_edit_fillets

The min radius, max radius and min angle options filter the fillets that will be converted into corners.  Only fillets whose radius falls between the min/max values and have an arc of at least the min angle will be modified; all others will remain unchanged.

edge_fillets_example

This example found and removed fillets with radii greater than .001 but less
than 1.1. Thus, the large top-corner fillet (radius 2) remains unchanged.

The trim-intersect function requires you to specify the two fillet end points. To use this function, activate the top node selector, then click the surface edge at the approximate location of one end of the fillet. A temporary node will be created, and the node selector will advance. Now, click the surface edge at the other end of the fillet. The surface edges will be extended tangentially from the points selected until they meet at a hard corner.

 

Panel Inputs

Input

Action

surfs selector

Select the surface to find.

fillets selector

Select the fillet to find.

min radius

Only fillets with a radius of at least this length will be found.

max radius

Only fillets with a radius of less than this length will be found.

min angle

Only fillets with an arc of at least this number of degrees will be found.

all / rounds / fillets

Choose whether to find fillets, rounds, or all.

Fillets are typically quarter-circles or less, while rounds are quarter- to-half-circles.  All searches for both types.

trim-intersect: node selector

Select one of the end points of the fillet you wish to remove by clicking the fillet’s line in the graphics area.

trim-intersect: node selector (second)

Select the other end point of the fillet you wish to remove by clicking the fillet’s line in the graphics area.

A second temporary node is created, and the fillet is removed to be replaced by a corner.  The corner is formed by extending the two lines on which the nodes you selected lie, until they touch.

 

hmtoggle_arrow1By Feature

Use this subpanel to combine surfaces based on geometric features.  Edges meeting the criteria specified on this subpanel will be suppressed so that the corresponding surfaces are treated as being continuous by the meshing engine.  Edges falling outside the criteria remain unmodified.

The angle surfs and offset surfs values preserve green edges between surfaces whose break angle (difference in surface normal direction) is more than the input value, ensuring that features are not suppressed. These normals are calculated and compared at an offset distance from their common shared edge. You can adjust both the angle and the offset distance.

angle_offset_surfs_example

With all surfaces selected, the suppressed (dotted line) edges on the right side become
shared because they exceed the angle--but the one on the left remains since it does not.

 

Panel Inputs

Input

Action

surfs selector

Select the surface to modify.

close / leave orphan

This toggle determines whether or not you wish the geometry engine to attempt to create closed loops from any non-closed features, such as an incomplete circle or u-shaped feature.

angle surfs

Preserves shared (green) edges between surfaces whose break angle (difference in surface normal direction) is more than the input value.  These normals are calculated and compared at an offset distance from their common shared edge.  You can adjust both the angle and the offset distance.

offset surfs

Enter the offset distance to be used in conjunction with the angle surfs value.

min fillet/max fillet

Preserves the shared (green) edges along the line of tangency of the surface fillet and its adjacent surfaces.  The faces that comprise the length of the fillet are combined (their edges are suppressed).  You can adjust the minimum and maximum fillet radii to be considered.

angle vertex

Checks angle vertex to preserve the shared (green) edges leading away from a surface vertex whose exterior angle is greater than a user-specified angle. This option works on only suppressed edges and unsuppresses them where this criterion fails.  Therefore, if you use move mode with this option alone it will not provide effective results.

angle_vertex_example

The two suppressed (dotted) edges in the center-right of the model are unsuppressed (solid green) when using an angle vertex value of 220 degrees.

shape ratio

Checks for surfaces that have shape ratio (ratio of the lengths of opposite edges) greater than the user-specified value. In such a case, any suppressed edges present inside that surface are unsuppressed to reduce the shape ratio.  Similar to vertex angle tool, this option works effectively with update mode or in combination with other options.

shape_ratio_example

The small suppressed edges near the circular hole are unsuppressed,
making the surface ratio fall within the specified threshold.

min edge

Detects edges that are smaller than the user-specified value. The edges that are detected as small are fixed in three ways:

If the small edge contains any fixed points that aren’t required for geometric connectivity, those fixed points are suppressed.
If the edge is much smaller than the minimum specified (less than 1/10th of specified value), the edge is degenerated (one of the end points is replaced by the other).
In the remaining situations, edges are suppressed wherever possible to avoid small length edges.

min_edge_example

 

 

See Also:

Edges panel