This uses the ConstraintBean to limit the motion of a transformGroupBean and
allow the motion to be propagated along the chain (see kinematics
theory).
We have already covered forward
kinematics where motions can be specified for any tranformGroups in the
chain and the movement of the leaves of the tree is the resultant of all the
transformGroups above it.
First start the program. Add a cylinder under a shape3d and transformGroup
beans.
Set the radius of the cylinder to 0.1 and the height to 1,

Now use the transform group to rotate the cylinder through 1.56 and move it
through x= -1.8

You should now have a file as here.
Now do a deep copy of the transformGroup, and paste this under the transform
group.

You should now have a file as here.
Now add a constraintBean under this new transformGroup
set the translation to be fixed and the rotation to move within bounds.
This means that the joint can bend but is otherwise fixed to the transformGroup
below it.
Also enable 'chain', this mean that if the program cant move the transform
group to the desired place because of the constraints, then it is allowed to
modify the transformGroup above it in the chain.

You should now have a file as here.
Now continue adding sections of the arm, below the previous transformGroups
in the chain.

You should now have a file as here.
Now at the end of the chain add a box.

You should now have a file as here.
Now if you drag the box, the arm joints will rotate to remain attached. This
is inverse kinematics.

Warning this functionality may not be fully implemented
in the current version of the program.
This site may have errors. Don't use for critical systems.