174 ORTHOGONAL TRANSFORMATIONS AS VERSORS CHAPTER 7
in the direction of the rotation axis to construct x
↑
= a (a·x), x
= x−a (a·x), x
⊥
= a×x,
resulting in the rotation matrix
Rodrigues’ formula: [[ R]] = [[ a]] [[ a]]
T
+ cos ([[1]] − [[ a]] [[ a]]
T
) + sin [[ a
×
]] ,
where [[ a
×
]] is the matrix corresponding to the cross product operation. This is a
coordinate-free specification of an operator based on geometric principles. The geometric
principle may be the same as before, but note that this formula is an explicit construction
rather than an automatic consequence. Unfortunately it only works in 3-D (as the use of
the cross product betrays). Moreover, it constructs a matrix that only applies to vectors
rather than a universal rotation operation.
We emphasize that for a rotation, the bivector angle I contains all information: both the
angle and the plane in which it should be measured. From this bivector angle, one can
immediately construct the rotor performing the corresponding rotation. We will see a
straightforward method for that in Section 7.4, and may write R
I
to foreshadow this.
7.2.3 A SENSE OF ROTATION
Using the transformation formula x → R x
R ,weseethatarotorR and “minus that
rotor” (−R) give the same resulting rotation. This does not necessarily mean that the
representation of rotations by rotors is two-valued: these rotors can be distinguished when
doing relative rotations of connected objects. Such relative rotations can be achieved in
two ways: by going clockwise or counterclockwise. You may think that you cannot tell
from the result which it was, but it is useful to discriminate them in some applications (it
can prevent you from curling up the wires on your robot). Let us call this property the
sense of a rotation. It comes for free with the rotor representation.
We derive the rotation angle for the negative rotor −R
I
by rewriting it into standard
form:
−R
I
= −cos( /2) + I sin(/2)
= cos
(2π + )/2
− I sin
(2π + )/2
= R
I(2π+)
.
(7.5)
It is now obvious that R
I
and −R
I
lead to the same result on a vector since a rotation
over 2π + is the same as a rotation over , see Figure 7.4. Yet the following real-life
experiment called the plate trick shows that this is actually not true for connected objects.
Hold out your hand in front of your shoulder, a hand-length away, palm upwards
and carrying a plate. Now make a motion with your arm that rotates the plate hor-
izontally in its plane over 2π. After completion, you will have your elbow sticking
up awkwardly in the air. Continue the plate rotation over another 2π (you may
have to wriggle your body a little to keep the plate turning in its plane). Perhaps