# Getting point-coordinates after a rotation

I have two points $p_1$ and $p_2$ on a 2-dimensional graph, each having an $x$-coordinate and a $y$-coordinate. I want to rotate $p_2$ by $60^\circ$ around $p_1$, such that $p_1$ is fixed in its position. So, how to know the new $p_2$ coordinates (after rotation)? I think there's some relation between the line that connects $p_1$ to $p_2$ and the angle $60^\circ$, but can't figure what is.

-

Write the points in column vectors: $\begin{pmatrix} x\\y \end{pmatrix}$. Then
$P_2':=\begin{pmatrix} \cos\varphi & -\sin\varphi \\ \sin\varphi & \cos\varphi \end{pmatrix}\cdot (P_2-P_1) + P_1$
where choose $\varphi=\pm 60^\circ$ according which direction you want to rotate.
Yes, matrix multiplication, I could have expanded it. First reduced the problem where $P_1$ is the origo (shifted by $-P_1$ before rotation and $+P_1$ after), and the matrix multiplication gives the rotated vector. – Berci Sep 30 '12 at 9:22