我正在写一个小测试项目。我在一个原点有一个物体(有一个位置和边界框),当有事情发生时(比如鼠标点击/触摸手机),我想要从原点物体到该点绘制一条线。
使用纹理,我意识到我将不得不在这里使用旋转,但不知道如何计算旋转纹理的数量。任何帮助将不胜感激。
到目前为止,我有:
Vector2 Origin Vector2 TouchPoint
就是这样。
全部谢谢!
答案 0 :(得分:0)
Theres是一个基于X和Y坐标计算角度的简单公式:
float angle = Math.Atan2(TouchPoint.Y - Origin.Y, TouchPoint.X - Origin.X);
您可以在接受旋转角度的SpriteBatch.Draw()
的重载中使用此角度。
请参阅此内容以供参考: http://msdn.microsoft.com/en-us/library/ff433992.aspx
您可能想要在度和弧度之间进行转换:
float rad = deg * Math.PI/180;
float deg = rad * 180/Math.PI;