Graphics Reference
In-Depth Information
normal transformation at every point. In both cases, it's the function
H
that leads
to problems. The “vector” transformation for any function
U
is, in general, the
derivative
DU
. In the case of a matrix transformation
T
M
that's being applied only
to points of the
w
=
1 plane, the “vectors” lying in that plane all have
w
=
0, and
so the matrix used to transform these vectors can have its third column set to be
all zeroes (or can be just written as a 2
×
2 matrix operating on vectors with two
entries), as we have seen earlier. But since
S
=
H
◦
T
M
,
(10.128)
we have (using the multivariable chain rule)
DS
(
P
)=
DH
(
T
M
(
P
))
·
DT
M
(
P
)
.
(10.129)
⎡
⎤
⎦
)=
⎡
⎣
⎤
⎦
, we know that
/
x
y
w
x
w
⎣
Now, since
H
(
y
/
w
1
⎡
⎤
⎡
⎤
w
2
x
y
w
1
/
w
0
−
x
/
⎣
⎦
)=
⎣
⎦
w
2
DH
(
01
/
w
−
y
/
(10.130)
0
0
0
⎡
⎤
w
0
−
x
1
w
2
⎣
⎦
=
0
y
00 0
w
−
(10.131)
and
⎡
⎣
⎤
⎦
.
−
20
1
01 0
10 0
DT
M
(
P
)=
M
=
(10.132)
⎡
⎤
s
t
0
So, if
P
=
x
,
y
,1
is a point of the
w
=
1 plane and
v
=
⎣
⎦
is a vector in that
⎡
⎤
2
x
−
1
y
x
⎣
⎦
and
plane, then
S
(
P
)=
⎡
⎤
⎡
⎤
2
x
−
1
y
x
s
t
0
⎣
⎦
)
⎣
⎦
DS
(
P
)(
v
)=
DH
(
·
DT
(
P
)
v
=
(10.133)
⎡
⎤
⎡
⎤
⎡
⎤
x
0
−
(
2
x
+
1
)
20
1
01 0
10 0
−
s
t
0
=
1
x
2
⎣
⎦
⎣
⎦
⎣
⎦
0
x
−
y
(10.134)
00
0
⎡
⎣
⎤
⎦
⎡
⎣
⎤
⎦
=
⎡
⎣
⎤
⎦
.
x
2
−
10
−
x
s
t
0
−
s
/
=
1
x
2
−
(
tx
−
sy
)
/
x
2
0
yx
0
00 0
(10.135)
Evidently, the “vector” transformation depends on the point
(
x
,
y
,1
)
at which
it's applied. The normal transform, being the inverse transpose of the vector trans-
form, has the same dependence on the point of application.