Graphics Programs Reference
In-Depth Information
P
∗
=
PT
. We illustrate this for two points.
1
:Point
P
=(1
,
1
,
1) is projected to
P
∗
=(0
,
0
,
0) because
⎛
⎝
⎞
⎠
s
00
sr
0100
−
(1
,
1
,
1
,
1)
=(0
,
0
,
0
,
0)
.
s
00
sr
0
−
10
−
2
rs
1
/
√
2(2
2
:Point
P
=(2
k,
0
,
2
k
) is projected to
P
∗
=(0
,
−
−
r
)
,
0) because
⎛
⎞
s
00
sr
0100
−s
⎝
⎠
(2
k,
0
,
2
k,
1)
=(0
,
−
1
,
0
,
2
s
(2
−
r
))
.
00
sr
0
−
10
−
2
rs
Exercise 3.19:
The product
⎛
⎞
s
00
sr
0100
−
⎝
⎠
(0
,
0
,
0
,
1)
s
00
sr
0
−
10
−
2
rs
equals (0
,
−
1
,
0
,
−
2
sr
)
,
which suggests that the origin (0
,
0
,
0) is projected on the screen
at point
P
∗
=(0
,k/
√
2
,
0). This, however, does not make sense since point (0
,
0
,
0) was
originally “behind” the viewer and should remain behind it after all the transformations.
What's the explanation?
Mighty is geometry; joined with art, resistless.
—Euripides
Note
. Notice the rightmost column of matrix
T
[Equation (3.8)]. The first and
third elements of that column are nonzero, which indicates that the projection plane
intercepts the
x
and
z
axes. This is discussed in detail on page 110.
Example 2
. The viewer is located at
B
=(
kβ
)
and is looking in direction
D
=(
α,
0
,β
) (i.e., toward the origin). Matrices
T
1
,
T
2
,
T
3
,
and
T
p
below are similar to the ones from the previous example. The result is
−
k
sin
θ,
0
,
−
k
cos
θ
)=(
−
kα,
0
,
−
T
=
T
1
T
2
T
3
T
p
⎛
⎞
⎛
⎞
⎛
⎞
⎛
⎞
1000
0100
0010
kα
β
0
α
0
0 100
−
1000
0100
0010
00
1000
0100
000
r
0001
⎝
⎠
⎝
⎠
⎝
⎠
⎝
⎠
=
α
0
β
0
0 001
0
kβ
1
−
k
1
Search WWH ::
Custom Search