Jump to content
  • Advertisement
Sign in to follow this  
shaKu_shawn

rotate point around origin by angle

This topic is 4058 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I am not 100% clear on the math for what i am trying to do... let me give you a sample situation... i have a point lets say 15,5 which is the point of an arrow. I have another point which is the base of the arrow (my origin) which is 2,2... what i am doing is i need to rotate the arrow on its origin by 45 degrees and find out the new point for the tip... if somone could give me the equation and a sample solution using the equation for these values it would be great!

Share this post


Link to post
Share on other sites
Advertisement
This isn't homework, is it? (Just checking...)

Anyway, to rotate about an arbitrary point:

1. Translate the point by the negative of the pivot point
2. Rotate the point using the standard equation for 2-d (or 3-d) rotation
3. Translate back

Share this post


Link to post
Share on other sites
jyk is correct, and here is an example of how you would do that:


Firstly, translate:

v = (15,5) - (2,2) = (13,3)

Now rotate by 45°:

v = (13*cos 45° - 3*sin 45°, 13*sin 45° + 3*cos 45°) = (7.07.., 11.31..)

And finally, translate back:

v = v + (2,2) = (9.07.., 13.31..)


And there's your answer.


(For the rotation stage, you might find this useful:
http://mathworld.wolfram.com/RotationMatrix.html )

Share this post


Link to post
Share on other sites
haha nah its not homework... working on a 2d sprite based game in XNA and needed this equation for translating the sprite per-pixel collision information based on the current sprite rotation ;) (the game is just for fun by the way)... thanks a ton for the help!

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!