A rotation is a special case of a linear transformation, which is generally expressed by an matrix, , assuming the transformations are performed over . Consider transforming a point in a 2D robot, , as

If is a rotation matrix, then the size and shape of will remain the same. In some applications, however, it may be desirable to distort these. The robot can be

for positive real values and . If one of them is negated, then a mirror image of is obtained. In addition to scaling, can be

for . The case of is shown in Figure 3.28.

The scaling, shearing, and rotation matrices may be multiplied together to yield a general transformation matrix that explicitly parameterizes each effect. It is also possible to extend the from to to obtain a homogeneous transformation matrix that includes translation. Also, the concepts extend in a straightforward way to and beyond. This enables the additional effects of scaling and shearing to be incorporated directly into the concepts from Sections 3.2-3.4.

Steven M LaValle 2012-04-20