Movable 3D Human Model
The 6 DOF (degree of freedom) Body Motion feature adds two important improvements, to the 5 DOF capability offered in KineBody Basic:
These improvements are implemented by a combination of features, including:
[In this discussion, the ‘body’ refers more specifically to the thorax (ribcage), which is KineBody’s ‘hub’ around which all other movable segments are positioned. When you rotate or translate the thorax, all the other body segments are subjected to the same overall motion. The motions of the other segments relative to the thorax (which comprise another 172 degrees of freedom) are not relevant to this discussion].
KineBody Pro normally allows you to move the body with 5 degrees of freedom: 3 translations (horizontal, vertical, & distance) , and 2 rotations:
Spin | rotation about the body’s longitudinal axis |
Tilt | inclination of the longitudinal axis, relative to the viewing screen |
The 6 DOF feature adds the third rotational degree of freedom:
Dial | rotation of the body about an axis normal to the screen |
Dial angle adjustment makes it possible to position the body in arbitrary orientations. Of these, a particularly important case of interest is when the body’s longitudinal axis is horizontal and in the plane of the screen, i.e., a lateral view of a body laying down, swimming, crawling, etc. In KineBody Pro, these positions are only reachable by rotation about the dial axis.
Dial angle adjustment is crucial if you’re using KineBody to synthesize realistic poses. On the other hand, if you’re studying the general skeletal anatomy and kinesiology, 2 rotational DOFs ( i.e., 5DOF body motion) may be adequate.
As with the other DOF, the dial angle can be adjusted several ways, including a slider (at the bottom of the screen) and a joystick method (i.e. by dragging across the viewing area). [Dial via joystick is invoked by holding down the [Alt] key while dragging]. You can also change the dial angle instantly, in 90° steps, as described below.
When 3 rotational DOF are available, some complication arises re: how angles are defined, especially regarding their ranges. The standard convention for defining the orientation of a body in space, in terms of angles, is to use 'principal values': a range of ±180° is used for two of the angles, whereas the third uses a ±90° range. This convention makes it possible to report the angles with no ambiguity: there's a one-to-one correspondence between angles and orientations. A drawback of this method is that the angles can change abruptly, even when you change the orientation smoothly.
KineBody Pro uses a special convention for reporting angles, denoted 'casual' mode. Casual mode avoids the jumps, by defining all three rotation angles over a ±180° range. With this method, there's some redundancy in the angle values: each spatial orientation can be represented by two different sets of angles. This drawback is insignificant for most KineBody usage scenarios. [An optional 'strict' mode may be implemented in KineBody Pro, to enforce the typical principal values, if there is sufficient demand].
The primary benefit of 6 DOF body motion is that all possible spatial orientations can be reached, when positioning the KineBody body. However, there are additional benefits: with 6 DOF, it’s possible to introduce simple but powerful positioning tools, such as Step Rotations and Zero Rotation buttons.
Step rotations are instant 90° rotations of the body about any of 3 screen-fixed axes (horizontal, vertical, or normal to the screen). You invoke them by simple pushbuttons, for left, right, up, down, clockwise & counterclockwise directions. The axes for these rotations aren’t necessarily the same as the ‘regular’ KineBody rotation axes (): the step rotation axes never move, whereas the regular rotation axes may follow the body (i.e., the spin axis moves when you change the tilt angle, and the tilt axis moves when you change the dial angle). As a result, step rotations are simple & intuitive, however, they’re also powerful: you can reach body orientations that aren't possible using just 5 DOF!
Along with the step rotation buttons, an additional '0' button is provided to return the body to its 'home' position, by setting all body rotations to zero. This button affects the body position only (defined as that of the thorax); it doesn't alter any of the joint angles.
In KineBody, the choice of rotation axes (spin, tilt, and dial) is special – these axes were chosen to simplify positioning the body, using intuitive controls such as KineBody’s view-integrated joystick. Other conventions (such as the yaw, pitch, & roll axes commonly used for vehicles) are not well suited for describing typical human motions, plus they’re difficult to control, using 2D graphics tools such as mice and touchpads/screens. There aren't any standardized names for the axes used in KineBody, so ‘spin’, ‘tilt’, and ‘dial’ have been chosen, as simple & meaningful labels.