Graphics Reference
In-Depth Information
A generalized central projection in
R
3
.
B
Figure 3.31.
u
3
p
d
u
1
u
2
o
V
z
y
x
the point (0,-1/a,0). In other words, using homogeneous coordinates the map C
a
is
defined by the matrix
1000
000
0000
0001
Ê
ˆ
Á
Á
Á
˜
˜
˜
a
M
a
=
.
Ë
¯
Now for an arbitrary generalized frame F = (
u
1
,
u
2
,
p
) in
R
3
, let
V
be a view plane for
F that is a distance d in front of
B
= base(F) and that has origin
o
. See Figure 3.31.
Let p be the generalized central projection of
R
3
on
V
with center
p
. Suppose that we
would like to determine a formula for p(
p
)
in view plane coordinates
for an arbi-
trary point
p
Œ
R
3
. Choose an orthonormal basis
u
3
for
B
and let G = (
u
1
,
u
2
,
u
3
,
p
) be
the corresponding augmented frame for F. The map G
-1
maps world coordinates into
the coordinates of the frame G. Let T be the translation
q
Æ
q
- (0,d,0). Then p=
C
1/d
TG
-1
. If we use homogeneous coordinates, the p can be expressed in terms of a
matrix, like in Section 3.5.1. Actually, because of all the zeros in the matrix M
a
, the
computations can be simplified. To compute p(
q
) we only need to compute the dot
product of
q
with
u
1
and keep track of that. More precisely,
(
)
d
qp u
qp u
-
•
•
Ê
Ë
ˆ
¯
1
2
()
=
p
q
,, .
00
(
)
-
Now back to the general problem in
R
n
. Given a generalized frame F = (
u
1
,
u
2
,...,
u
k+1
,
p
) in
R
n
, the problem that interests us is to determine the generalized central pro-
jection p with center
B
= base(F) of
R
n
to a view plane
V
that is a distance d in front of
B
. There is again the important special case where
p
= (-1/a)
e
k+1
, F = (
e
1
,
e
2
,...,
e
k+1
,
p
),
and the view plane
V
is
R
k
with origin
0
. Using homogeneous coordinates the general-
ized central projection C
a
in this case is defined by the matrix