Graphics Reference
In-Depth Information
s 1
x 1
y 1
z 1
s 2
x 2
y 2
z 2
x 1
s 1
z 1
y 1
q 1 q 2 =
L( q 1 ) q 2 =
y 1
z 1
s 1
x 1
z 1
y 1
x 1
s 1
s 2
x 2
y 2
z 2
s 1
x 1
y 1
z 1
x 2
s 2
z 2
y 2
q 1 q 2 =
R( q 2 ) q 1 =
.
y 2
z 2
s 2
x 2
z 2
y 2
x 2
s 2
Remember that L( q 1 ) q 2 =
R( q 2 ) q 1 , as this is central to understanding the next
stage. Furthermore, don't be surprised if you don't understand the logic of the argu-
ment in the first reading. It took the author many hours of anguish trying to decipher
the original algorithm, and the explanation has been expanded to ensure that you do
not suffer the same experience!
First, let's employ the matrices L and R to rearrange the quaternion triple product
acb to abc : i.e. move c from the middle to the right-hand side.
We start with the quaternion triple product acb and divide it into two parts, ac
and b . We can do this because quaternion algebra is associative:
( ac ) b .
We have already demonstrated above that the product ac can be replaced by L( a ) c :
acb
=
acb
=
L( a ) cb .
We now have another two parts: L( a ) c and b which can be reversed using R without
disturbing the result:
acb
=
L( a ) cb
=
R( b )L( a ) c
which has achieved our objective to move c to the right-hand side.
Now let's repeat the same process to rearrange the triple product qpq 1 .The
objective is to remove p from the middle of q and q 1 and move it to the right-hand
side. The reason for doing this is to bring together q and q 1
in the form of two
matrices, which can be multiplied together into a single matrix.
We start with the quaternion triple product qpq 1
and divide it into two parts,
qp and q 1 :
qpq 1
( qp ) q 1 .
=
The product qp can be replaced by L( q ) p :
qpq 1
L( q ) pq 1 .
We now have another two parts: L( q ) p and q 1
=
which can be reversed using R
without disturbing the result:
qpq 1
= R q 1 L( q ) p
= L( q ) pq 1
which has achieved our objective to move p to the right-hand side.
The next step is to compute L( q ) and R( q 1 ) using q
=
s
+
x i
+
y j
+
z k . L( q )
is easy as it is the same as L( q 1 ) without any subscripts:
Search WWH ::




Custom Search