Graphics Programs Reference
In-Depth Information
but this product is complex and hard to interpret geometrically. In order to simplify
it, we assume, without loss of generality, that both lines pass through the origin and
that the first is also horizontal (Figure 1.7b). The first assumption means that the lines
intersect at the origin and that c = f = 0. The second assumption means that the first
line is identical to the x axis, so a = 0 and b =1. Also, f = 0 implies dx + ey =0
or y =
( d/e ) x .Thequantity
d/e is the slope (i.e., tan θ ) of the second line, so we
conclude that
d
e
sin θ
cos θ ,
implying d 2 + e 2 =1 .
=
tan θ =
L 2
L 2
θ
L 1
θ
L 1
(a)
(b)
Figure 1.7: Reflections About Two Intersecting Lines.
Under these assumptions, the matrix product above becomes
e 2
d 2
100
0
2 de
0
d 2
e 2
10
001
2 de
0
0
0
1
e 2
d 2
2 de
0
e 2
d 2
=
2 de
0
0
0
1
cos(2 θ )
sin(2 θ )0
sin(2 θ ) θ )0
0
,
=
(1.14)
0
1
leading to the important conclusion that the product of two reflections about arbitrary
lines is a rotation through an angle 2 θ about the intersection point of the lines, where
θ is the angle between the lines. It can be shown that the opposite is also true; any
rotation is the product of two reflections about two intersecting lines.
The discussion above assumes that both lines pass through the origin. In the special
case where θ = 0, such lines would be identical, so reflecting a point P about them would
move it back to itself. However, for θ = 0, matrix (1.14) reduces to the identity matrix,
so it is valid even for identical lines.
In the special case where the lines are parallel, their intersection point is at infinity
and a rotation about a center at infinity is a translation.
 
Search WWH ::




Custom Search