I am programming a $2D$ game, and I have noticed I am having trouble getting the position $(X, Y)$ of a rectangle's corner, when such rectangle is rotated. The position I am seeking is absolute in the $2D$ space.

enter image description here

As you can see, I need help finding the correct formula to find the bottom-right corner of my rectangle when it is rotated. Given the rectangle's dimensions are $100\times 50$, and it has been rotated by degrees.

Also, the $Y$ position in this language is increased the lower the point is. Basically, the top of the screen is $Y=0$ and the bottom is $Y=600$

Thank you.

  • $\begingroup$ Rotating with respect to what? Where is the origin of your coordinate system? $\endgroup$ – J. M. is a poor mathematician May 7 '11 at 0:31
  • $\begingroup$ The origin? Do you mean, the top-left of the rectangle? Sorry I forgot to mention that. $\endgroup$ – Zol Tun Kul May 7 '11 at 0:35
  • $\begingroup$ The origin: you're rotating with respect to some point. What's that point? Note that if your (horizontal) rectangle were laying on the horizontal axis and the lower left corner is $(0,0)$, the coordinate of your lower right corner is $(100,0)$. $\endgroup$ – J. M. is a poor mathematician May 7 '11 at 0:37
  • $\begingroup$ (0,50) is the origin. Sorry, my mistake twice :( $\endgroup$ – Zol Tun Kul May 7 '11 at 0:41

The idea is to first translate your coordinates to a new coordinate system such that the origin is at $(0,0)$ (subtract $(0,50)$ from all your original coordinates), perform the rotation, and then translate back.

So, in this new coordinate system, the bottom of your rectangle has endpoints at $(0,0)$ and $(100,0)$. You can then use a(n anticlockwise) rotation matrix to transform the point $(100,0)$ to its rotated image:


and then undo the translation you made before rotating, which yields the point $(50\sqrt{2},50+50\sqrt{2})$ as the coordinates for the upper left corner in its new position.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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