Here is what we want -- to do transformations in the plane solely by multiplying by matrices.
Here is the problem -- translation involves adding a vector, not multiplying by a matrix.
Here is the solution to the problem -- homogeneous coordinates. This means that we will represent the point (x,y) like this:
x
y
1
It also means that we do each of our matrix transformations (reflection, projection, rotation) like this (reflection around the x axis is used for example):
1
0
0
0
-1
0
0
0
1
x
y
1
Here is how we move the (x,y) point by 2 right and 3 up:
1
0
2
0
1
3
0
0
1
x
y
1
This series of matrix multiplications moves rotates (x,y) by 90 degrees, projects the result onto the x axis, and then moves that result right 2 and up 3:
1
0
2
0
1
3
0
0
1
1
0
0
0
0
0
0
0
1
0
-1
0
1
0
0
0
0
1
x
y
1
Transformer: the applet
To run the Transformer, click on the button. Instructions are below.
You use the applet to create a string of matrix multiplications -- a product -- in homogeneous coordinates.
Then you tell the applet to apply the matrix product against the points of a given figure (shown in black in the coordinate grid in the transformation window).
The idea is to see how your matrices make the figure move.
Click on the Apply Product button. Then look at the transformation plot to see what happened. The original figure will be drawn in black. The new position of the figure caused by your matrix product will be in red.
It is also fun to do something to the figure (reflect or project) relative to a point. But you need to see the point.
To make a point appear, fill in the numbers in the point display, and click on the Reference Point check box.