Specifications

190
The natural position of this joint would be in the jointsanddrivers.any file, because that is where we put the
elements that connect the body to the environment. If you open this file you will see that it has a folder
called Drivers that implements the joint angles specified in the mannequin file. But there is not a Joints
folder. This is because the standing model does not have any actual joints with the environment. So we go
to the top of the file and create a new folder for joints:
AnyFolder Joints = {
};
AnyFolder EnvironmentModel = {
We are going to make two spherical joints. The easiest way to do it is to create the first one with the object
inserter and then copy it to make the second one. Place the cursor on the empty line between the two
braces of the new Joints folder, pick the Classes tab, and unfold the class tree to locate the
AnySphericalJoint. Right-click and insert a template:
AnyFolder Joints = {
AnySphericalJoint <ObjectName>
{
AnyRefFrame &<Insert name0> = <Insert object reference (or full object
definition)>;
AnyRefFrame &<Insert name1> = <Insert object reference (or full object
definition)>;
};
};
We first define the necessary local names:
AnyFolder Joints = {
AnySphericalJoint rhHandle = {
AnyRefFrame &Glove = <Insert object reference (or full object definition)>;
AnyRefFrame &Handle = <Insert object reference (or full object definition)>;
};
};
The next step is to specify the two reference frames to be joined. In this case the two frames will be the
glove of the right hand and the right handle. Both of these can be located in the object tree provided the
model is loaded. Click the Model tab and expand the tree through the HumanModel, Right, an down to the
Glove segment as shown in the figure above. Erase the <> and its contents on the right hand side of the
equality sign, right-click the Glove segment in the tree, and insert the object name:
AnyFolder Joints = {
AnySphericalJoint rhHandle = {
AnyRefFrame &Glove = Main.Model.HumanModel.Right.ShoulderArm.Seg.Glove;
AnyRefFrame &Handle = <Insert object reference (or full object definition)>;
};
};
Similarly, locate the Handle node in the Wheel segment in the EnvironmentModel part of the tree and insert
the name as the second reference frame:
AnyFolder Joints = {
AnySphericalJoint rhHandle = {
AnyRefFrame &Glove = Main.Model.HumanModel.Right.ShoulderArm.Seg.Glove;
AnyRefFrame &Handle = Main.Model.EnvironmentModel.Wheel.rHandle;
};
};