0

我太笨了,无法解决基本代数,如果你能帮我解决这个问题会很酷

通常我得到旋转并尝试获得我想要将对象旋转到的位置

var rads : Number = rotation / 180 * Math.PI;
position.x = Math.cos(rads);
position.y = Math.sin(rads);

这次我得到了职位,但我想获得轮换,但我尝试的一切都是错误的,提前感谢您的帮助

编辑:对于那些遇到同样问题并使用 actionscript 3(或任何也具有此功能的东西)的人来说,用 Math.atan2() 进行实验可以为您节省很多麻烦 - 更快更容易

4

2 回答 2

1

我认为您在问如何获得正 x 轴与从原点到 (x,y) 的线段之间的角度。我假设 x 和 y 是正数,因为这样可以简化讨论,如果不是,您可以将它们设为正数,然后在适当的轴上反映该角度。

你可以得到角度的余弦x/Math.sqrt(x*x + y*y)。然后该值上的 Math.Acos 将以弧度为单位计算 arccos(这是您要查找的角度的值)。

于 2012-12-12T04:28:01.277 回答
1

大多数语言都提供了一个名为的函数,该函数atan2()负责为您完成所有繁重的工作,在所有四个象限中给出正确的答案。

>>> math.atan2(-1, 1)
-0.7853981633974483
>>> math.atan2(-1, 1) * 180 / math.pi
-45.0
于 2012-12-12T05:23:51.953 回答