Composition and Inversion of Transformations
[Hill: p. 222-224.
Foley & van Dam: p. 208-210, 222-226]
A series of transformations can be accumulated into a single transformation
matrix.
Suppose our object is defined as follows:
Suppose we wish to place the object in our scene like this:
This can be accomplished in several ways, one of which is:
Substituting (1) in (2) gives:
Comments on Matrix Composition
-
compositions of transformations are non-commutative
trans(2,3,0)rot(z,-90) != rot(z,-90)trans(2,3,0)
-
transformations matrices can be multiplied together to achieve a single
composite transformation matrix
-
the placement of a transformation determines the coordinate system in which
it takes place. For example, in making an additional transformation to
our model as follows, we can choose to express the translation in either
object or world coordinates.
As another example, we could rethink our initial example as having a trans(2,3,0)
executed, followed by a rot(z,-90) in object coordinates. Thus,
if we specify a sequence of transformations always in terms of a fixed
(world) coordinate system, they should be ordered from right-to-left. On
the other hand, if we think of all transformations in terms of a local
(object) coordinate system, they should be ordered from left-to-right.
-
Transformations are invertible, either by inverting the matrix or by undoing
the transformations. i.e., trans(a,b,c) trans(-a,-b,-c) = I
-
Transformations can be thought of as a change in coordinate system.
-
The transformations necessary to convert a point from CS 2 to CS 1 are
given by the transformations necessary to align the CS 1 frame with the
CS 2 frame.