Graphics Reference
In-Depth Information
This concludes what we have to say about robotics. For a more in-depth study of
the subject see [Crai89], [Feat87], or [Paul82]. The description of mechanical manip-
ulators in terms of the four link parameters described in this section is usually called
the Denavit-Hartenberg notation (see [DenH55]).
As is often the case when one is learning something new, a real understanding of
the issues does not come until one has worked out some concrete examples. The ani-
mation programming projects 4.13.1 and 4.13.2 should help in that regard. Here are
a few comments about how one animates objects. Recall the discussion in Section
2.11 for the 2d case. To show motion one again discretizes time and shows a sequence
of still pictures of the world as it would look at increasing times t 1 , t 2 ,..., t n . One
changes the apparent speed of the motion by changing the size of the time intervals
between t i and t i+1 , the larger the intervals, the larger the apparent speed. Therefore,
to move an object X , one begins by showing the world with the object at its initial
position and then loops through reshowing the world, each time placing the object in
its next position.
4.14
Quaternions and In-betweening
This short section describes another aspect of how transformations get used in ani-
mation. In particular, we discuss a nice application of quaternions. Unit quaternions
are a more efficient way to represent a rotation of R 3 than the standard matrix rep-
resentation of SO (3). Chapter 20 provides the mathematical foundation for quater-
nions. Other references for the topic of this section are [WatW92], [Hogg92], and
[Shoe93].
We recall some basic facts about the correspondence between rotations about the
origin in R 3 and unit quaternions. First of all, the quaternion algebra H is just R 4
endowed with the quaternion product. The metric on H is the same as that on R 4 .
The standard basis vectors e 1 , e 2 , e 3 , e 4 are now denoted by 1 , i , j , k , respectively. The
subspace generated by i , j , and k is identified with R 3 by mapping the quaternion
a i +b j +c k to (a,b,c) and vice versa. The rotation R of R 3 through angle q about the
directed line through the origin with unit direction vector n is mapped to the quater-
nion q defined by
q
q
q
=
cos
+
sin
n
Œ
H
.
(4.25)
2
2
Conversely, let q = r + a i + b j + c k be a unit quaternion ( q ΠS 3 ) and express q in the
form
q
=
cos
q
+
sin
q
n
,
(4.26)
where n is a unit vector of R 3 . If M q is the matrix defined by
2
2
12 2 2 2 2 2
22 122 22
22
--
b
c
rc
+
ab
ac
-
rb
Ê
ˆ
Á
Á
˜
˜
2
2
M
q =
ab
-
rc
-
c
-
a
ra
+
bc
,
(4.27)
2
2
Ë
rb
+
ac
2 2 122
bc
-
ra
-
a
-
b
¯
Search WWH ::




Custom Search