HyperMesh and BatchMesher

Morph Volume panel

Morph Volume panel

Previous topic Next topic Expand/collapse all hidden text  

Morph Volume panel

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

Location:   Tools page - HyperMorph module

 

The Morph Volume panel allows you to create, edit, save, load, convert, and delete morph volumes.

A morph volume (or "mvol") is a six-sided prism that can be used to manipulate a mesh by manipulating the shape of the morph volume. Morph volumes are very malleable; the length and curvature of each edge can be modified independently of the others, and adjacent morph volumes can be linked through various tangency conditions. This malleability allows you to enclose a given mesh with morph volumes, alter the morph volumes to fit your model, and then change the shape of your model by modifying the morph volumes. Morph volumes present a simple, powerful, and intuitive way to morph.

Although morph volumes can be created, edited, and deleted in this panel, the actual morphing of morph volumes is performed either in the Morph panel, where you can move the handles, or the map to geom panel, where you can map morph volume edges to a variety of entities. Morph volumes behave very much like domains (by moving the handles associated with the morph volumes the enclosed mesh can be manipulated) but morph volumes have the additional feature that you can morph them independently of the enclosed mesh. For instance, if you wish to change the shape of your morph volumes without affecting the mesh you can set the morph volumes to be inactive.  This allows you to use all of the morphing capabilities to modify the shape and position of your morph volumes to better fit your mesh. Then you can switch the morph volumes back to being active and use them to morph the mesh.

Note:When you set your morph volumes back to being active, you may be asked whether you want to remove the inactive handle perturbations from the morph list.  Clicking yes, which is recommended, will make it so that the undo and redo buttons do not undo and redo the inactive movements of your morph volumes. Clicking no will treat the morph volume perturbations just like any other morphing. The toggle that allows you to switch morph volumes between being active and inactive can be found in the parameters subpanel of the Morph Volumes panel, and in the morphing subpanel of the Morph Options panel.  (See the parameters subpanel for more details.)

Morph volumes will only morph the mesh for nodes that have been registered. In some cases, nodes within morph volumes are automatically registered when the morph volumes are created, while in others only the selected nodes or nodes on selected elements are registered. If the morph volumes do not appear to be morphing nodes inside them, you may need to register those nodes. (See the update mvols subpanel for more details.)

morph_volume_handles

A morph volume with handles at the corners.

 

Panel Usage


The Morph Volume panel consists of several subpanels:create, update mvols, update edges, split/combine, save/load, convert, and parameters.

morph_volumes_panel

Settings made on one subpanel are not lost of you switch subpanels, but may be lost if you return out of the panel.

 

Subpanels and Inputs


The Morph Volume panel contains the following subpanels and command buttons:

hmtoggle_arrow1Create

Use the Create subpanel to create a single volume, or a matrix of volumes, enclosing nodes or elements.

The following methods of creation are supported:

Method

Description

create morphvol

This is the default method, which involves selecting the elements or nodes that you wish the new volume to contain.

pick and enclose

This method relies on selecting nodes to indicate where you wish your new volume’s corner handles to be.  It works in two ways:

You can select a node for each of the eight corners of the new morph volume.
If your model contains at least one morph volume, you can create a new volume adjacent to an existing one by selecting nodes on the face of the existing volume (and optionally designating the elements or nodes that you wish the new volume to contain). HyperMesh creates a new volume, joined to the first, which either contains those nodes/elements, or which extends outward a distance equal to the average length of the edges on the selected face.

morph_volume_create


morph_volume_Create02

Note the gray-highlighted elements


The new mvol comforms to the shape of the selection.

pick on screen

This method allows you to simply draw the two-dimensional boundaries of the new morph volume directly on-screen.  The new morph volume will be given sufficient depth to enclose all the nodes selected within the window.

morph_volumes_pick

Here, 3 of 4 lines have been laid down.  When the 4th is laid, HyperMesh creates a new morph volume matching its shape and thick enough to enclose the relevant elements.

mvolpick2

reflect morphvols

This method allows you to select one or more reflective symmetries and create new morph volumes by reflecting existing ones.

mvolrefl

create matrix

This method creates a uniform matrix of connected morph volumes.  As morph volumes are three-dimensional, you can create a single-layer matrix of morph volumes (for example, nine volumes in a 3x3x1 matrix) or a multi-layer matrix (such as a 3x3x3 cube). Additionally, if you select a cylindrical coordinate system for the matrix, the matrix will be oriented around the central axis of the system.

morph_volume_matrix

This rectangular matrix has X,Y,Z density of 3,3,3

morph_volumes_matrix_round

This cylindrical matrix has R, theta, Z density of 2,8,1

drag morphvols

This method allows you to select existing morph volumes and drag their faces through a mesh, along a line or nodelist, along a vector, or about an axis.

morph_volume_drag

Volumes dragged along a node list

mvolspin

Volumes spun about an axis

drag elements

This method allows you to select shell elements and drag them through a mesh, along a line or nodelist, along a vector, or about an axis.

drag matrix (rect)

This method allows you to create morph volumes in a rectangular configuration through a mesh, along a line or nodelist, along a vector, or about an axis.

drag matrix (cyl)

This method allows you to create morph volumes in a cylindrical configuration through a mesh, along a line or nodelist, along a vector, or about an axis.

drag lines (rect)

This method allows you to create morph volumes in a rectangular configuration with the outer profile matched to selected lines and drag them through a mesh, along a line or nodelist, along a vector, or about an axis.

mvolprof

Profile lines dragged along a line to create morph volumes.

drag nodes (rect)

This method allows you to create morph volumes in a rectangular configuration with the outer profile matched to a list of nodes and drag them through a mesh, along a line or nodelist, along a vector, or about an axis.

drag lines (cyl)

This method allows you to create morph volumes in a cylindrical configuration with the outer profile matched to selected lines and drag them through a mesh, along a line or nodelist, along a vector, or about an axis.

drag nodes (cyl)

This method allows you to create morph volumes in a cylindrical configuration with the outer profile matched to a list of nodes and drag them through a mesh, along a line or nodelist, along a vector, or about an axis.

 

Panel Inputs

Input

Description

auto-tangent

If tangency is selected, a continuous tangency condition will be applied across adjacent edges for the new morph volumes. Tangency ensures smooth morphing between morph volumes.

Note:Tangency conditions can extend across multiple morph volumes, meaning that handle movements at one end of the morph volume matrix can potentially affect every morph volume.

buffer %

This determines the amount of empty space between the selected nodes or elements and the faces of the created morph volumes, based on the average size of the morph volume to be created. For instance, if a mesh measured 30x30x30 and a 10% buffer percentage was selected, the morph volume would be created measuring 36x36x36, which would give it a 10% (3 unit) buffer zone between each side and the enclosed mesh.

(create method switch)

The first switch on the panel presents all of the creation methods described above.  The option that you pick influences which of the remaining inputs display on the rest of the panel.

(drag direction switch)

This switch displays when using any of the "drag" creation methods.

along mesh will drag the morph volume faces or elements along a line that runs roughly through the centroid of the selected nodes or elements.
along line drags the morph volume faces or elements along a line.
along nodelist drags the morph volume faces or elements along a line created from a list of nodes.
along vector will drag the morph volume faces or elements in the specified direction. Use the toggle to select whether to drag for a specified distance or far enough to enclose the selected elements or nodes.
about axis will spin the morph volume faces or elements about the specified axis. Use the toggle to select whether to drag through a specified angle or far enough to enclose the selected elements or nodes.

elems (drag elements)

Use this collector to select the elements you wish to drag.

enclose elems / enclose nodes

Use this toggle to change the entity selector below it; then, use the selector to pick the entities that you wish the morph volume to enclose.

(fit method switch)

A second switch allows you to determine what, if anything, the morph volume can do after creation to better fit the elements that it encloses:

shrink depth: appearing only when the creation method is pick on screen, this fit method will shrink the morph volume only in the direction of the screen vector (the corners will remain at the positions you selected).
no shrinking: no shrinking is applied to the morph volumes upon creation, but you may shrink or fit them later using the shrink mvols or fit faces features in the update mvols subpanel, or you may adjust them manually by making the mvols inactive and then morphing their handles.
shrink mvols: the morph volumes which are created will be shrunk around the mesh to match the specified buffer % value. The implicit mode algorithm will be used to perform the shrinking.
slide faces: slide faces will slide the faces normal to their orientation, maintaining the orientation angles and shapes of the faces.
tilt faces: tilt faces will change the orientation angles of the faces but maintain the shapes.
fit faces: fit faces will change the shapes of the faces if there are mid-handles on the face edges, otherwise it will tilt the faces.

global system / local system

global system creates the new morph volume with coordinates relative to the default global coordinate system; local system adds a syst selector to allow you to pick the desired local coordinate system to associate the new volume with.

handle placement:

This switch determines where the morph volume's handles are located:

corners only
corners & edges
no handles

If you choose corners and edges, you must also specify the number of handles to create on each edge.  You can specify 1 to 5 edge handles, which will be evenly spaced along the edge between the corner handles.

morphvolumes

This entity collector displays when the creation method is reflect mvols.  Use it to pick the existing morph volumes that you wish to reflect in order to create new volumes.

node list

This entity collector displays when the creation method is pick and enclose or drag nodes.  Use it to select the nodes that you wish to enclose or drag.

on drag

This numeric box displays when the creation method is any of the "drag" options.

This is the number of morph volumes that will be created along the drag direction. Thus, if you had selected six morph volumes and set on drag to 5, a total of 30 (6 x 5) new morph volumes will be created.

on face x

This numeric box displays when the creation method is drag matrix (rect), drag lines (rect), or drag nodes (rect).

On face x and on face y are the number of morph volumes which will be created for a rectangular matrix in the local x and y directions. The local x direction is determined as being either the global x axis as projected on to the plane normal to the drag direction, or if the drag direction is perpendicular to the global x axis then the projection of the global y axis is used.  The local y direction is perpendicular to the local x direction and the drag direction.

on face y

This numeric box displays when the creation method is drag matrix (rect), drag lines (rect), or drag nodes (rect).

On face x and on face y are the number of morph volumes which will be created for a rectangular matrix in the local x and y directions. The local x direction is determined as being either the global x axis as projected on to the plane normal to the drag direction, or if the drag direction is perpendicular to the global x axis then the projection of the global y axis is used.  The local y direction is perpendicular to the local x direction and the drag direction.

register all inner nodes

This option displays when the create method is pick and enclose or reflect mvols. It associates all nodes enclosed by the morph volume with that volume.

The process of registering nodes allows you to do two things: One is to control which nodes are morphed by morph volumes and which are not (such as when you are matching one mesh to another), and the other is to make one morph volume dependent on another by registering its handle nodes to a morph volume that encloses it.

After morphing morph volumes while they are inactive, unregistered nodes may end up inside the morph volumes. These will not be automatically registered when the morph volume status is switched to active. You will need to register these new nodes manually.

r density

This numeric box displays when the creation method is drag matrix (cyl), drag lines (cyl), or drag nodes (cyl).

r density is the number of morph volumes which will be created in the radial direction.

symmetries

This entity collector displays when the creation method is reflect mvols.  Use it to select the reflective symmetry around which you wish to reflect the specified morphvolumes.

t density

This numeric box displays when the creation method is drag matrix (cyl), drag lines (cyl), or drag nodes (cyl).

t density is the number of morph volumes which will be created in the outer layer about the drag axis.

X density / Y density / Z density

When the creation method is create matrix, These values are the number of morph volumes that will be created along each axis.

For example: when creating a single-layer, 3 x 3 matrix of volumes around a 2-D mesh, you might specify 3 for the X and Y densities and 1 for the Z density.

For a cylindrical matrix, the x density refers to the number of morph volume layers in the radial direction and the y density refers to the number of morph volumes in the outermost ring.

 

hmtoggle_arrow1Update Mvols

Use the Update Mvols subpanel to update the handle and tangency conditions of morph volumes, register or unregister nodes for morph volumes, shrink morph volumes, fit the faces of morph volumes, join and equivalence morph volumes, or delete all empty morph volumes.

 

Panel Inputs

Input

Description

auto-tangent

If tangency is selected, a continuous tangency condition will be applied across adjacent edges for the new morph volumes. Tangency ensures smooth morphing between morph volumes.

Note:Tangency conditions can extend across multiple morph volumes, meaning that handle movements at one end of the morph volume matrix can potentially affect every morph volume.

buffer %

This determines the amount of empty space between the selected nodes or elements and the faces of the created morph volumes, based on the average size of the morph volume to be created. For instance, if a mesh measured 30x30x30 and a 10% buffer percentage was selected, the morph volume would be created measuring 36x36x36, which would give it a 10% (3 unit) buffer zone between each side and the enclosed mesh.

The fit through nodes option is only available for fit faces operations performed by face.

by face / by mvol

Use the toggle to select either by face or by mvol, then select the morph volume faces or morph volumes to be fitted.

Note:When you select by mvols, all external faces of the morph volume will be fitted.

(fit method switch)

Use the switch to choose the type of fitting applied to the faces:

slide faces will slide the selected faces normal to their orientation
tilt faces will tilt the faces to match the selected nodes
fit smooth will smoothly curve the face to closely match the selected nodes
fit wavy will fit a trigonometric shape to match the selected nodes
fit approx. will smoothly curve the face to roughly match the selected nodes

free inner faces

When active, this option allows the inner faces (faces shared by more than one selected morph volume) to be free to move during the shrinking operation. This option is not available during morph volume creation.

handle placement:

This switch determines where the morph volume's handles are located:

corners only
corners & edges
no handles

If you choose corners and edges, you must also specify the number of handles to create on each edge.  You can specify 1 to 5 edge handles, which will be evenly spaced along the edge between the corner handles.

When performing a fit faces operation, this switch becomes a toggle instead with the following options:

use current: Keeps the current handles.
handles/edge: allows you to specify a number of handles per edge after the volume faces are fitted.

implicit mode / explicit mode

Use the toggle to select the algorithm used when shrinking the selected morph volumes.

Implicit mode. Uses internally calculated sensitivities to shrink the morph volumes, making it faster than explicit mode, however it usually requires twice as many iterations (30-50 is usually enough) to converge.
Explicit mode. Uses externally calculated sensitivities to shrink the morph volumes and is slower than implicit mode, however it usually converges in 15 to 20 iterations.

max. iter

The maximum number of iterations to perform when shrinking morph volumes.

morphvolumes

Use This entity collector to pick the existing morph volumes that you wish to update.

project normal / project by vector

Use this toggle to select whether to project the faces normal to their current orientation or along a vector. If using a vector, point the vector in the direction the target nodes or elements will end up relative to the faces, after the faces have been fitted.

register all inner nodes

This option associates all nodes enclosed by the morph volume with that volume.

When registering nodes to multiple morph volumes or all morph volumes, nodes will only be registered to the morph volume that they are inside. This provides a convenient way to register masses of nodes rapidly. Nodes that are selected to be registered but that do not lie within a morph volume will still be registered to all morph volumes but will not be affected by any morph volume morphing. However, when switching from inactive to active status for morph volumes, all registered nodes are re-registered to the morph volumes, which allows for nodes to become registered to a new morph volume, or all morph volumes, depending on their location.

The process of registering nodes allows you to do two things: One is to control which nodes are morphed by morph volumes and which are not (such as when you are matching one mesh to another), and the other is to make one morph volume dependent on another by registering its handle nodes to a morph volume that encloses it.

After morphing morph volumes while they are inactive, unregistered nodes may end up inside the morph volumes. These will not be automatically registered when the morph volume status is switched to active. You will need to register these new nodes manually.

registered nodes / fit to nodes / fit to elems

Select one of the following: fit to elements, fit to nodes, or fit to the registered nodes for the selected morph volumes.

If you are fitting to selected elements or nodes you are also given entity collectors to select them, as well as the option to register those nodes to the morph volumes being fit.

When performing a register nodes operation, only the registered nodes entity collector displays.

single morph volume / multiple morph volumes / all morph volumes

When performing a register nodes operation, this switch lets you determine which morph volumes you wish to register nodes to.  The "single" and "multiple" options present entity collectors, while the "all" option requires no further input.

smoothness

Higher values will give a flatter result and lower numbers will allow more curvature. The smoothness does not apply when using slide faces or tilt faces.

tolerance

When joining mvols with the equivalence option, this tolerance determines which volumes will join. If the faces of two morph volumes are within the tolerance distance from each other and have been selected, they will be joined.  (Unselected volumes will not be joined regardless of tolerance.)

(update operation switch)

This switch allows you to choose the type of update you wish to perform:

update mvols: Pick morph volumes and update their handles or tangency.
join mvols: combine two morph volumes, each of which is chosen with an individual morphvolume entity collector.  You can then:
-join at midpoint: the two morph volumes that you choose will stretch equally to join at the midpoint between their closest faces.
-first to second: the first morph volume that you choose will stretch to meet the second morph volume that you chose (the second volume will not stretch at all).
-second to first: the second morph volume that you choose will stretch to meet the first morph volume that you chose (the first volume will not stretch at all).
-equivalence: all of the morph volumes that you choose whose faces are within the specified tolerance will be joined together at their respective midpoints.

mvolequiv

shrink mvols: shrink selected morph volumes to more tightly fit their registered nodes.
fit faces: curve or otherwise alter mvol faces to better fit the relevant elements.

morph_volume_fit

register nodes: Registers nodes to a morph volume.
delete empty: Deletes any morph volumes that have no registered nodes.  This allows you to easily pare down large 3-D matrices of morph volumes, retaining only the volumes that contain parts of your model.

Different inputs display depending on the type of update operation.

hmtoggle_arrow1Update Edges

Use the Update Edges subpanel to modify the properties of a morph volume’s edges individually. You can add or remove mid-nodes, fit the edge to a node list, or change edge tangency.

HyperMorph includes several types of edge tangency:

Free tangency effectively removes tangency from a selected edge, so that its shape is not affected by the edges attached to it.

mvoltan1

Here, there is no correlation between the slopes of the edges.

Fixed tangency refers to fixing one end of the edge so that that end’s slope is equal to a vector that you specify.  For example, you can make one end of an edge begin with a flat slope.

mvoltan2

Here, the left end of the curved edge has been fixed relative to the Y-axis. Now the slope of the line is enforced at one end and free at the other while still passing through the handles. Note that when updating edge tangencies, the handles are not shown (for clarity) and tangency symbols are drawn at the ends of the edges where they apply.

Master/slave tangency refers to a situation in which one edge (the master) is tangent to another edge (the slave) with the end of the slave edge being forced to meet the curvature at the end of the master edge. This is similar to setting one corner of the slave edge to be fixed (as for fixed tangency, above) but the corner’s slope is fixed relative to the slope of the master edge, instead of being fixed relative to a vector or axis. This is very useful for keeping one morph volume (and the mesh inside) constant while still maintaining tangency between it and surrounding morph volumes.

mvoltan3

Here, the edge on the left is slaved to the edge on the right.  Note how the master edge is unaffected by the slave edge.  Also note how the slave edge must remain tangent to the master edge.

Continuous tangency refers to creating a consistent slope at a shared corner of two connected morph volumes.

mvoltan4

In this example, both edges form a continuous spline.

Note:Tangency implies continuity between neighboring morph volumes, which means that morphing applied to one morph volume will affect all other morph volumes whose edges are connected through tangency. This is true for morphing in all directions.

update_edges_tangency_lateral_linear_example

In this example the morph volumes are connected with continuous tangency. Note how the mesh remains continuous across the boundary between the morph volumes regardless of the morph direction. For the lateral morphing case this means that elements in the lower morph volume will be shifted to the right when the upper morph volume is moved to the left. For the linear morphing case this means that the elements in the lower morph volume away from the boundary will be stretched and elements near the boundary will be compacted, which prevents an abrupt change in element size. Also note the uneven distribution in compaction for the upper morph volume.

 

 

Panel Inputs

Input

Description

by edges / by nodes / by mvols

Appearing when updating ends, this switch determines how you select the ends, as well as revealing additional inputs:

by edges allows you to pick the edge directly with the mouse by using an end node selector.
by nodes requires you to pick node a and node b.  These nodes should be the corner handles of the edge that you wish to free from tangency. Node a will be freed from tangency between its adjacent edges.
by mvols requires you to select one or two sets of morph volumes and possibly also a vector or coordinate system depending on the option selected.

connect all edges /

connect edges between /

connect along vector /

connect radial edges /

connect circum. edges

 

This switch appears if you update ends, by mvols, with continuous tangency.

connect all edges will connect all edges on the selected morph volumes which lie roughly in the same direction and meet at a common corner node.
connect edges between will connect all edges on the first group of selected morph volumes to edges on the second group of selected morph volumes which lie roughly in the same direction and meet at a common corner node. Shared edges between the groups will not be connected.
connect along vector is the same as the connect all edges option except that it will only apply to edges which run roughly parallel to the specified vector. This allows you to connect edges running along the z-axis, for example.
connect radial edges is the same as the connect all edges option except that it will only apply to edges that run radially with respect to the specified system. This option works best with cylindrical type matrixes of morph volumes.
connect circum. edges is the same as the connect all edges option except that it will only apply to edges which run circumferentially with respect to the specified system. This option works best with cylindrical type matrixes of morph volumes.

create handles

When this option is active, handles will be created on the edge after it is updated.

end node

This collector displays when updating ends by edges.  Use it to select an edge by selecting one of its end points. An edge runs from one corner of a morph volume to the other regardless of any tangency conditions.

fix along

This plane and vector selector displays when using update ends, by mvols, with fixed tangency.  Edges which run roughly parallel to the specified vector will gain a fixed tangency.

free / fixed / master-slave / continuous

When using update ends and by mvols, this switch presents different types of tangency to apply.  This choice can reveal additional inputs.

See Types of Edge Tangency, above, for details on each type.

free all edges / free edges between / free along vector / free radial edges / free circum. edges

When using update ends and by mvols, this switch presents different methods of selecting the edges to free as well as additional inputs in each case.

free all edges will free any tangency condition for any edges on the selected morph volumes.
Note:For master-slave and continuous type tangencies, both edges must lie on the selected morph volumes.
free edges between will free master-slave and continuous type tangencies where one edge of the tangency lies in the first group of selected morph volumes and the other edge of the tangency lies in the second group of selected morph volumes.
free along vector is the same as the free all edges option except that it will only apply to edges which run roughly parallel to the specified vector. This allows you to free edges running along the z-axis, for example.
free radial edges is the same as the free all edges option except that it will only apply to edges which run radially with respect to the specified system. This option works best with cylindrical type matrixes of morph volumes.
free circum. edges is the same as the free all edges option except that it will only apply to edges which run circumferentially with respect to the specified system. This option works best with cylindrical type matrixes of morph volumes.

master, slave

These two morphvolumes collectors appear when using update ends, by mvols, with master-slave tangency.  Use them to select the master morph volumes and slave morph volumes.

mid-nodes on edge / add mid-node

This toggle appears when updating nodes.

When setting the number of mid-nodes on edge, type the number of desired mid-nodes in the field. The graphics will display the positions of the new mid-nodes with X marks. The new positions will be evenly spaced along the edge.

mvolmidnode1

When you use add mid-node, you can type the relative position (from 0 to 1) of the new mid-node into the field, or you can click on the edge where you want the new mid-node to be, or you can click a node in the model and have the position of the new mid-node be aligned with that node. An X mark will appear on the screen to show you where the new mid-node will be created.

mvolmidnode2

When updating nodes by node list, the mid-nodes for the edge will be updated at the nodes that you selected, or if you selected only the corner nodes, the edge will be updated to have no mid-nodes.

mvolmidnode3

node a, node b

These node collectors display when updating nodes by pick end nodes, or when updating ends by nodes.  They allow you to specify the ends of the desired edge.

pick edge / pick end nodes / node list

When updating nodes, this switch lets you choose how to select the edge that you wish to update nodes for.

If you choose pick end nodes, node a and node b collectors display to allow you to specify the ends.

If you choose node list, a node list collector displays to allow you to specify the desired nodes.

tangencies

This color button displays any time the first switch is set to update ends.

Click the button to open a color palette and pick a new color for the tangency markers (arrows).

update nodes / update ends / delete mid-nodes

The first switch on the subpanel determines the remaining layout.  Use it to select the type of edge update you wish to make.

 

hmtoggle_arrow1Split/Combine

Use the Split/Combine subpanel to combine multiple morph volumes into a single larger one, or to split a morph volume into multiple smaller ones.

It’s worth noting that any split or combine operations you perform in a matrix of morph volumes will propagate through the matrix along the vector of the split-line (or the edge that is being removed in a combine operation).  The example below shows this with regard to a split:

mvol_split_propagation

Here, the middle bottom edge was chosen for splitting roughly 2/3 of the way along
its length (marked by the green "x").  The split propagated upward through the matrix.

This propagation is done intentionally, to maintain continuity within the matrix of morph volumes.

Note:If a split or combine operation cannot be propagated through the morph volume matrix it will not be performed for any morph volumes.

 

Panel Inputs

Input

Description

by edges / by nodes

When splitting morph volumes, this toggle determines how you specify the location of the split.

If you choose by nodes, select a node a and node b by picking them in your model.
If you choose by edge, click the edge you wish to split.

combine mvols /

split mvols

The first toggle determines which type of operation will be performed, and which additional inputs display.

create handles

When splitting a morph volume, make sure that the create handles checkbox is active if you wish to create handles on the new morph volumes.

If this option is inactive, the new volumes’ edges will have nodes but not handles.

keep tangent

This checkbox displays when combining morph volumes.  Use this option to set the edges of the new (combined) morph volume to continuous tangency with the edges of morph volumes adjacent to it.

If you deactivate this option, the new (combined) morph volume’s edge curvature will not affect or be affected by the edge curvature of the volumes adjacent to it.

make tangent

When splitting a morph volume, set the make tangent checkbox to be active if you want the edges of the newly-created morph volumes to maintain tangency with the volumes adjacent to them.

morph volume

A pair of these selectors display when combining morph volumes. Use them to select the volumes that you wish to combine.

single split / # of splits

If you choose single split, either type in the relative position (from 0 to 1) along the edge where you want the split to occur, click on the edge where you want the split to occur, or click a node in the model with which you want the split to be aligned.

For example: to split at the exact mid-point (creating two identical new volumes of half the original width), type in 0.5.  By comparison, a value of 0.2 would still result in two morph volumes, but the one closest to node a would be only 1/5th as wide as the original distance between node a and node b.

Instead of typing in a value, you can simply click a spot on the edge, or a node in the model, to have HyperMorph calculate the distance ratio for you.  An X marks the spot.

If you choose # of splits, type in a number to indicate how many split-lines to create.

For example: two split-lines will split a morph volume into three.  HyperMorph places the number of split-lines that you specify equally-spaced along the length of the edge. HyperMesh marks each split location with an X.

 

hmtoggle_arrow1Save/Load

Use the Save/Load subpanel to save or load morph volumes and morphed shapes to or from a file.

 

Panel Inputs

Input

Description

file:

The file path and name of the morph volume file--either the file to save mvols to, or the one to load them from.  You can type in the filename and path, or click browse to navigate to and select it.

morph volumes

When saving mvols, use this selector to pick the mvols that you wish to save to the specified file.

register all inner nodes

When loading mvols, ensure that the register all inner nodes checkbox is active if you wish to automatically assign mesh nodes to the loaded morph volumes.

save mvols / load mvols

This toggle determines whether the specified file will be saved or loaded.

save shapes

When saving mvols, ensure that this checkbox is active if you wish to save shapes (morphs) to the file well as morph volumes.

 

hmtoggle_arrow1Convert

Use the Convert subpanel to convert morph volumes to hexahedral elements, and convert hexas to morph volumes.

Note:Converting complex morph volumes to hexa elements will generally result in the loss of some edge detail, because hexas can only have (at most) one edge node. This means that morph volumes with more than one node or handle along their edges will be approximated with a single node between the corner handles. Morph volumes are always converted into second order hexas, whether or not they include such extra handles.

mvol_convert_vol mvol_convert_hex

In this example, a curved morph volume is converted to a second-order hex-mesh element.

 

Panel Inputs

Input

Description

auto-tangent

This checkbox displays when converting hexas to mvols.

If tangency is selected, a continuous tangency condition will be applied across adjacent edges for the new morph volumes. Tangency ensures smooth morphing between morph volumes.

Note:Tangency conditions can extend across multiple morph volumes, meaning that handle movements at one end of the morph volume matrix can potentially affect every morph volume.

elems

When converting hexas to mvols, use this collector to pick the elements that you wish to convert in your model, or use the extended entity selection menu.

handle placement

When converting hexas to mvols, use this switch to select a type of handle placement for the new volumes: corners & edges, corners only, or no handles.

This determines the type and placement of handles on the newly created morph volume.

If you choose corners & edges, you must also specify the number of handles to create on each edge.  You can specify up to five edge handles, which will be evenly spaced along each edge between the corner handles.

hexas to morphvolumes / morphvolumes to hexas

This switch determines which action will be performed, as well as which additional inputs display.

morph volumes

When converting mvols to hexas, use this selector to pick the mvols that you wish to convert.

register all inner nodes

This checkbox displays when converting hexas to mvols.  When active, HyperMesh automatically assigns each of the nodes located within a new morph volume to that volume.

 

hmtoggle_arrow1Parameters

Use the Parameters subpanel to change basic settings of morph volumes, such as the handle size, the way that they are drawn, or the method of interpolation for edge curvature.  You can also make morph volumes inactive (or reactivate them) so that you can move the volume handles to better fit your mesh without morphing the mesh in the process.

 

Panel Inputs

Input

Description

face drawing

Use this switch to choose how HyperMesh draws the flat faces of morph volumes:

Wireframe means that the face has no color at all; only the morph volume edges and handles are drawn.
Transparent (1, 2, or 3) means that the faces are drawn semi-opaque; higher numbers mean more opacity.
Opaque sets the morph volumes’ transparency to zero.

global influences

Use the switch to determine how morph volumes respond to global influences:

Direct influence means that the global handle directly affects each node.
Hierarchical influence means that the global handle affects the individual domain handles within the global domain, and they in turn affect the nodes within their domains.
Mixed method means that the global handles move the local handles, as for hierarchical, but they also apply the direct method to any nodes within the global domain’s influence that are not part of a local domain.  Such nodes otherwise would not morph at all when using the hierarchical method, causing mesh distortion at the local domain boundaries.

handle size

This is simply the radius of corner node handles, the largest type of handle used by morph volumes.  Other handles are drawn slightly smaller and in a different color.  The units used for this setting are the same as those used by your model.

Interpolation mode

This toggle supplies two different means of calculating edge curves:

Spline is the default method, and generally produces the best results.
Lagrange is a polynomial method, which may produce "wilder" curves for widely varying handle movements. For complicated curves the spline option is used even if this parameter is set to Lagrange.

morph volume solver

Use the toggle to determine which solver is used for determining the morphing of the nodes inside the morph volumes:

Standard will map the inner nodes to a position inside the morph volume and then use a reverse mapping process to determine where the nodes belong after the morph volume is morphed.  Morph volume tangencies and edge curvature is respected.
Kriging will apply the kriging algorithm for the morph volumes using only the handle positions as guides.  Since the kriging algorithm is linear and morph volumes with tangencies have curved edges, the movement of the inner nodes may not match the shape of the morphed volumes.  Increase the number of mid-side nodes if better correlation is desired.

morphvolumes (color)

Click this button and choose a color to assign a different color to morph volumes.

mvols: active, inactive, or skin only

This selector allows you to turn the morph volumes' ability to affect the mesh on and off. It also allows you to delay morphing of the interior of solid meshes.

By setting the toggle to mvols: inactive, you can change the shape and size of morph volumes (on the morph panel) to better fit your mesh without actually altering/morphing the mesh itself.  After adjusting the mvols, you can then return to the parameters subpanel to set them back to active and resume normal morphing behavior. Switching this parameter to active or skin only automatically re-registers all currently registered nodes. HyperMorph will first try to register a node in its current morph volume; if that is unsuccessful it will register it to any morph volume. Unregistered nodes are unaffected, even if they now lie within a morph volume.

The mvols:skin only feature will delay the morphing of any nodes inside of a solid mesh until the solve button is clicked. This allows you to more rapidly morph your model if it contains a large number of nodes while still being able to see what affects your morphing is having on the model. To use this feature, switch the selector to mvols:skin only, make any number of shape changes to your morph volumes, and then click the solve button to morph the interior nodes.

Note:Switching the selector away from mvols:skin only will automatically trigger the morphing of the nodes inside the solid mesh.

pts for edge draw

Type a number into this field to determine how many points each morph volume edge uses to represent curves.  Use larger numbers for smoother curves, or smaller numbers for faster rendering.  The default number is ten.

register tolerance

This setting determines how far outside the boundaries, relative to the size of the morph volume, a node may be from a given morph volume to be registered to it.  Thus, larger values allow nodes further outside a volume to still map to it.

Note:Nodes near the boundary between two morph volumes maybe mapped to either one.

 

hmtoggle_arrow1Command Buttons

The following action buttons appear throughout the subpanels:

Button

Action

combine

Combines selected mvols into one.

convert

Converts mvols to hexas or vice-versa

create

Creates a new mvol.

delete

Deletes the selected entities.

fit

Fits mvols to their registered mesh nodes as described in the update subpanel.

join

Joins selected mvols together.

Note:The volumes are not combined into a single volume; they simply share an edge (This differs from combine).

load

Loads the specified file.

reject

Reject undoes the creation or update (tangency, split/combine, and so on) of a morph volume.

review

Fills the node selector with the currently registered nodes.  Use the left and right mouse buttons to select and unselect nodes to be registered.

save

Saves the specified file.

shrink

Shrinks the mvols in accordance with your specifications.

split

Splits the specified mvol into two.

update

Updates the selected mvol nodes or handle placement.

 

 

 

See Also:

Morph Volume - HM-3550

HyperMorph Module

Morph panel

HyperMorph Strategies