# Transformation Matrices [duplicate]

Assuming that I have a set of points in a co-ordinate system (I know their coordinates), then I use a combination of transformations (Rotation, Scaling, Shearing and Translation) to get it to a new system (where again, I know the new co-ordinates), How do I find out the values of shearing, rotation, scaling and translation? Any method other than Iwasawa?

What I have tried:

The only thing I've realized is that if I have set of old coordinates and a set of new co-ordinates,

$$[Old] \times Transformation Matrix = [New]$$ $$Transformation Matrix = [Old] ^{-1}[New]$$ This gives me the cumulative Transformation matrix, how do I break it down to tell me what the shear, rotation, scale and translation was?

-
 – joriki May 10 '12 at 12:58 Both of these are in the search results for "rotation shear scaling". Please take a bit more care checking whether your question has been asked before before posting it. – joriki May 10 '12 at 12:59

## marked as duplicate by joriki, Zhen Lin, William, D'oh, QuixoticSep 9 '12 at 15:20

Now supposing your old and new coordinates share the same origin (after translation), you can compute the matrix $M$ for which transforms old coordinates to new: $[x_1\dots x_n]M=[y_1\dots y_n]$. I'm pretty sure the conditions you want make $M$ nonsingular, so the polar decomposition of $M$ will tell you what rotation and what stretching has occurred.