I am writing a program on my TI-84 Plus that allows the user to manipulate a matrix in a variety of ways by using the getkey function and labels to change a transformation matrix. At the end of multiple transformations, I want my calculator to display one transformation matrix that is equal to all of the other transformations combined and in order. I tried writing [Final]*[Initial]^-1=[Transformation]. This only works if the initial matrix is a three by three square however. How could I get the program to solve for the total transformation with the initial and final matrices if the initial matrix is not square?

Check the demensions of [final] and [initial]^-1 to make sure that it is possible to multply them. It would be very helpful if you could post some examples of what you would like you program to do.

What my program does now:

takes matrix initial, for example [1,2,3/2,4,2/1,1,1], draws the triangle and then moves it according to user input. If the user chooses to translate up by 2 and then translate over the x axis, the final matrix would be [1,2,3/-4,-6,-4/1,1,1]. My program would display the triangle formed by this matrix and on an input would display the transformation matrix [1,0,0/0,-1,-2/0,0,1] It gets this matrix by multiplying [1,2,3/-4,-6,-4/1,1,1]*[1,2,3/2,4,2/1,1,1]^-1.

If my initial matrix has four columns for example [1,2,3,4/2,4,4,2/1,1,1,1], then my program can draw a quadrilateral and if translated up two and then reflected over would display the new shape made by the matrix [1,2,3,4/-4,-6,-6,-2/1,1,1,1]. I want my program to now be able to display the transformation matrix [1,0,0/0,-1,-2/0,0,1] but I am not sure how to get it because I can't take the inverse of a 3x4 matrix.

If it helps I also ask for an input of the number of columns at the beginning.

How did you figure out the transformation matrix [[1,0,0][0,-1,2][0,0,1]] ? Maybe you could write the program so that it can find the transformation marix the same way.

I have thought about having my program combine all of the individual transformation matrices into one by keeping track of the number of times it gets rotated, translated, etc. However since the multiplication of matrices is not commutative, The order is important.

For example even if I know the user translated up two and reflected over the x axis but do not know the order there are multiple results. If I translated before I reflected I get a different final image then if I reflected then translated and my program would have no way of knowing the order each transformation occurs.

If you have a quadrilateral, you only need three of the points in order to perfectly derive the transformation matrix. Just pick three of the four points, form a 3x3 matrix, and use the inverse like you normally would.

Example: Say I have a rectangle $R = {(1,1), (3,1), (1,2), (3,2)}$ and $R' = {(1,1), (3,1), (1,0), (3,0)}$. I will pick just the first three points of each of these (assuming they correspond, of course) and solve for the transformation matrix:

(1)You can check yourself that this is indeed the transformation matrix for the rectangles.

Timothy Foster - @tfAuroratide

Auroratide.com - Go here if you're nerdy like me