Representation of Rotations
In 2D models, the rotation can only occur around the z-axis. It is represented by a scalar angle, θ.
In 3D the situation is more complex. There are three rotational degrees of freedom. For finite rotations, however, any choice of three rotation parameters is singular at some specific set of angles. For this reason, a four-parameter quaternion representation is used for the rotations in the joints. The quaternion parameters are called a, b, c, and d, respectively. These four parameters are not independent, so an extra equation stating that the following relation is added:
The four quaternion parameters are often represented as one scalar and one vector,
where
The connection between the quaternion parameters and a rotation matrix R is
The rotation can be also represented as a rotation vector with direction and a magnitude, .
The magnitude of the rotation is
and the direction is
The parameter a can thus be considered as measuring the rotation, while b, c, and d can be interpreted as the orientation of the rotation vector. For small rotations, this relation simplifies to
Successive rotations are represented by a quaternion multiplication
Just as finite rotations, quaternion multiplications are not commutative.