Game Development Reference
In-Depth Information
8.4
Axis-Angle and Exponential Map
Representations
Euler's name is attached to all sorts of stuff related to rotation (we just
discussed Euler angles in Section 8.3) . His name is also attached to Euler's
rotation theorem, which basically says that any 3D angular displacement
can be accomplished via a single rotation about a carefully chosen axis. To
be more precise, given any two orientations R 1 and R 2 , there exists an axis
n such that we can get from R 1 to R 2 by performing one rotation about
n . With Euler angles, we need three rotations to describe any orientation,
since we are restricted to rotate about the cardinal axis. However, when
we are free to choose the axis of rotation, its possible to find one such that
only one rotation is needed. Furthermore, as we will show in this section,
except for a few minor details, this axis of rotation is uniquely determined.
Euler's rotation theorem leads to two closely related methods for de-
scribing orientation. Let's begin with some notation. Assume we have
chosen a rotation angle θ and an axis of rotation that passes through the
origin and is parallel to the unit vector n . (In this topic, positive rotation
is defined according to the left-hand rule; see Section 1.3.3.)
Taking the two values n and θ as is, we have described an angular
displacement in the axis-angle form. Alternatively, since n has unit length,
we can multiply it by θ without loss of information, yielding the single
vector e = θ n . This scheme for describing rotation goes by the rather
intimidating and obscure name of exponential map. 8 The rotation angle
can be deduced from the length of e ; in other words, θ =
, and the
axis is obtained by normalizing e . The exponential map is not only more
compact than the axis-angle (three numbers instead of four), it elegantly
avoids certain singularities and has better interpolation and differentiation
properties.
We're not going to discuss the axis-angle and exponential map forms
in quite as much detail as the other methods of representing orientation
because in practice their use is a bit specialized. The axis-angle format is
primarily a conceptual tool. It's important to understand, but the method
gets relatively little direct use compared to the other formats. It's one
notable capability is that we can directly obtain an arbitrary multiple of
the displacement. For example, given a rotation in axis-angle form, we can
obtain a rotation that represents one third of the rotation or 2.65 times the
rotation, simply by multiplying θ by the appropriate amount. Of course,
e
8 The reason for this is that it comes from the equally intimidating and obscure branch
of mathematics known as Lie algebra. (Lie is pronounced “lee,” since it's named after a
person.) The exponential map has a broader definition in this context, and the space of
3D rotations (sometimes denoted as SO(3)) is just one type of Lie group. More regretful
comments about terminology to come.
 
Search WWH ::




Custom Search