Graphics Reference
In-Depth Information
and as a vector is defined by two points we can write
⎡
⎣
⎤
⎦
⎡
⎣
⎤
⎦
x
y
z
1
x
2
−
x
1
y
2
−
y
1
=[
Q
]
·
(7.104)
z
2
−
z
1
1
−
1
where we see the homogeneous scaling term collapse to zero. This implies that
any vector [
xyz
]
T
can be transformed using
⎡
⎤
⎡
⎤
x
y
z
0
x
y
z
0
⎣
⎦
⎣
⎦
=[
Q
]
·
(7.105)
Let's put this to the test by using a transform from an earlier example. The
problem concerned a change of axial system where a virtual camera was sub-
ject to the following:
roll
= 180
◦
pitch
=90
◦
yaw
=90
◦
t
x
=2
t
y
=2
t
z
=0
and the transform is
⎡
⎤
⎡
⎤
⎡
⎤
x
y
z
1
102
0 010
−
0
−
x
y
z
1
⎣
⎦
⎣
⎦
·
⎣
⎦
=
1 002
0 001
When the point (1, 1, 0) is transformed it becomes (1, 0, 1), as shown in
Figure 7.29. But if we transform the vector
110
T
it becomes
−
1
T
,
10
−
using the following transform
⎡
⎤
⎡
⎤
⎡
⎤
−
1
0
0
102
0010
−
1
1
0
0
⎣
⎦
⎣
⎦
·
⎣
⎦
=
−
1
0
−
1002
0001
which is correct with reference to Figure 7.29.
7.9 Determinants
Before concluding this chapter I would like to expand upon the role of the
determinant in transforms. Normally, determinants arise in the solution of