Engineering Solutions

Using Constraints

Using Constraints

Previous topic Next topic No expanding text in this topic  

Using Constraints

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

Morph constraints are a powerful tool that can be used to restrict the movement of nodes during morphing operations.  The following types of constraints can be applied to any node: fixed, cluster, along vector, on plane, along line, on surface, and on elements.  Whenever a handle is moved that influences a node which is constrained, the node is moved according to the handle perturbation and is then projected back onto the feature to which it is constrained.  This allows the nodes to slide across vectors, lines, planes, surfaces, and meshes, to remain fixed when handles are moved, or to move as a cluster along with other nodes.  You may also constrain nodes where handles are located which, in effect, constrains the handles.  When a perturbation is applied to a constrained handle, the handle are moved along the constraint feature regardless of the applied perturbation.  This means that if you apply a translation in the x direction on a handle that is constrained along a vector x - y = 0, the handle moves along both the x and y axes.

There are also morph constraints that can be applied to domains, such as the smooth constraint, which applies spline-based smoothing along the constrained edge domains, and model constraints, which allow you to set a given parametric target (such as length, angle, mass, etc.) and have HyperMorph adjust the model to meet that target.  These constraints as well as bounded and set distance options for the node constraints are described more fully in the panel help.

Morph constraints can be very useful for morphing a mesh that has been mapped to, projected to, or created upon a surface.  Note that the map to geom operation allows you to have a morph constraint automatically created after mapping.  Once you have done so, the nodes will remain on the surface during morphing operations.

Note:Although morph constraints can keep nodes on a curved line or surface during morphing operations, when morphs are saved as shapes and then turned into shape variables for optimization, the nodes will not stay on the line or surface during optimization.  This is because optimization is a linear process and the shapes will be treated as linear, meaning that the nodes will move directly from their original point to their maximally perturbed point without moving along any constraint.

morphstrat-67

Controlling handle positions with morph constraints

The angle of the lower right corner is changed from 74 to 90 degrees using the alter dimensions (angle)
operation.  The middle frame shows the result with no constraints.  The frame on the right shows the
result with the node in the upper right corner constrained to move along a vector that lies along the top edge.

morphstrat-68

Nodes tracking a line during morphing

The nodes along the right edge domain are constrained to the line.  When the
handle is moved, it and the other constrained nodes move along the line.

morphstrat-69

Morphing after mapping to surface

All mapped nodes are automatically constrained to the surface.  When the handles are translated,
the nodes are moved along the surface a distance corresponding to the applied handle perturbations.
If the handles were also part of the map to geom operation, they too will be moved along the surface
regardless of the applied perturbation.  In this example, the handles were translated linearly.
HyperMorph automatically placed the handles back on the surfaces after applying the translation
so that the constraint was obeyed.