Take the 2-minute tour ×
Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. It's 100% free, no registration required.

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

share|improve this question

1 Answer 1

up vote 1 down vote accepted

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.

share|improve this answer
Thanks. But why do we have a matrix of derivatives? Is this matrix multiplication? –  Desolator Sep 30 '12 at 8:38
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

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.