Affine Transformations and Linear Operations

Rotation, translation, reflection, dilation are all possible to represent with the form q_i = sum_j a_ij p_i + b_i, a representation of transformations that also compose with each other to give more affine transformations.

If a_ij are 0 when i /= j and 1 when i = j, and b_i are zero, then the transformation does nothing. This is the identity transformation.

If all a_ij are the same as the identity transformation, then the transformation is a translation, and translations compose by adding b_i pointwise. We can therefore also represent translations as a single coordinate list, similar to how we represent points. This is a vector, a coordinate list equipped with the rules of composition (and identity and inversion) that come from the affine transformations they were derived from.

We can also find the difference between the coordinates of two points, to find the vector that represents the unique translation that maps one of these points to the other. In the case where b_i are zero, the transformation can also be applied to the coordinates of the vector directly, and the result will be the same as applying the transformation to both points, and taking the difference. This is part of the motivation for defining another class of affine transformation, the linear transformations.

These two cases, translations and linear transformations, can be composed together to make any affine transformation. Further, composing an affine transformation with a translation is simplest to calculate when the transformation is decomposed in this way.

In addition to all of this, linear transformations can be understood as a set of coordinate lists, representing the images of each of [1,0,...,0], [0,1,0,...,0],...,[0,...,0,1], respectively. Represented in a row, of course, gives the matrix representation of a linear transformation.