0

我正在写一个小测试项目。我在原点有一个对象(带有位置和边界框),当发生某些事情时(比如在手机上单击鼠标/触摸),我希望从原点对象到该点绘制一条线。

使用纹理,我意识到我将不得不在这里使用旋转,但不知道如何计算出将纹理旋转多少。任何帮助,将不胜感激。

到目前为止,我有:

Vector2 原点 Vector2 接触点

就是这样。

谢谢大家!

4

1 回答 1

0

有一个简单的公式可以根据 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;
于 2012-06-09T15:31:25.283 回答