It’s possible to move ArmControl so that the mechanical arm fully extends to a straight position or orients itself to other positions that you don’t necessarily want.
You can limit the range of motion of the arm to ensure that the IK system poses in a predictable manner. In the following section, you limit the motion for the IK system as follows:
To lock the Translate X channel for ArmControl
The numerical field for Translate X is dimmed indicating that the channel is locked. If you try to move ArmControl in X, it will not be possible unless you unlock the Translate X channel.
To lock the Rotate X and Z channels for SwivelBase
To confirm that the Rotate X & Z channels are locked
SwivelBase rotates in the view but the mechanical arm does not rotate.
You first might think something is wrong because SwivelBase and all of the arm’s skeletons and surfaces are parented into the same hierarchy.
If you discover that something doesn’t work in the manner you originally anticipated when setting up an IK system, it’s useful to stop and diagnose why something is working the way it is (or not working the way it should). In that way you can retrace your actions to determine where the problem resides.
In this example, ArmControl and IK Handle are not parented into the SwivelBase hierarchy.
Because ArmControl and IK Handle control the movements of the mechanical arm, they must be parented into the SwivelBase hierarchy in order for the arm to rotate when SwivelBase is rotated.
To parent the IK Handle into the skeleton hierarchy
Setting any previous transformations to zero is necessary before parenting the IK Handle beneath SwivelBase in the hierarchy.
The order of selection is important. You want to Shift-select the items that will be the child nodes first, and then Shift-select the item that will be the parent node last.
In the Hypergraph, IKHandle and ArmControl are now child nodes for the SwivelBase node in the skeleton hierarchy.
When SwivelBase is rotated, the mechanical arm rotates because of its relationship within the hierarchy.
Finally, you want to limit how far Arm Control can translate away from the base of the model so the arm does not extend to a fully straightened position.
To determine the settings for the translation limits you need to examine the position of the mechanical arm in various positions while simultaneously viewing the translation values in the Channel Box.
To determine translation limits for the Arm Control
When the arm is diagonally articulated above the cargo box, it is almost fully extended when the translation values are roughly as follows:
When the arm is articulated to a compressed pose, the translation values are roughly as follows:
These minimum and maximum values will be used in the steps that follow as the minimum and maximum translation limits for the ArmControl.
To set translation limits for the Arm Control
The Attribute Editor displays the nodes associated with Arm Control.
If the ArmControl tab is not visible, use the left and right scrolls arrows to scroll the view sideways to view it.