GEOMETRY

2D Coordinate Rotation

Date Published:
Last Modified:

A 2D coordinate \((x_1, y_1)\) can be easily rotated by \(\theta\) around another point \((x_c, y_c)\) to give the new rotated point \((x_2, y_2)\) with the equation:

$$x_2 = (x_1 - x_c) cos(\theta) - (y_1 - y_c) sin(\theta) + x_c$$
$$y_2 = (x_1 - x_c) sin(\theta) + (y_1 - y_c) cos(\theta) + y_c$$

The angle \(\theta\) is positive for a counter-clockwise rotation. You may notice that the coordinate is translated as if \((x_c, y_c)\) was the origin, the rotation transformation is applied, and then it is translated back into position.


Tags:

    comments powered by Disqus