Originally Posted by **hpe**

Let's say a rotation of the desired form abou the ** origin** is of the form$\displaystyle \bold{y} = A \bold{x}$ where A is a matrix and x and y are 2-vectors. You'll have to determine the matrix A - your solution isn't correct since it doesn't pay attention to the 90 degrees. Such a rotation is linear.

Suppose now you want to rotate about a different point, say $\displaystyle \bold{x_0}$. Set $\displaystyle \bold{x'} = \bold{x - x_0}$. This is the displacement of the point x from $\displaystyle \bold{x_0}$.

Then $\displaystyle \bold{y'} = A\bold{x'} = A(\bold{x-x_0})$ is the rotated position vector, relative to the point $\displaystyle \bold{x_0}$, and therefore $\displaystyle \bold{y} = \bold{y'+x_0} = A\bold{(x-x_0)}+\bold{x_0}$ is the formula for the rotation about $\displaystyle \bold{x_0}$.