4.4 Affine Transformations

There is one glaring omission among all the transformations we have visited so far. We have not considered the simple translation that just moves all points in the same direction. A translation just adds a vector c04-math-0470 to every point: c04-math-0471. This is certainly a useful, in fact essential, transformation for graphics work; objects are moved around all the time. Unfortunately, it is not technically a linear transformation because it does not preserve vector addition and scalar multiplication. (In particular, it does not fix the origin and c04-math-0472 is not, in general, equal to c04-math-0473 for constant c04-math-0474.) This does not cripple its use in manipulating graphics objects because it certainly still preserves lines. Yet, since translation is not a linear transformation, it apparently cannot be represented by standard matrix multiplication, putting it outside the system we have developed for all the other linear transformations.

Nevertheless, the essential nature of translations means we immediately ...

Get Mathematical Structures for Computer Graphics now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.