给定速度的x和y分量,如何计算角度?

时间:2011-05-18 03:25:03

标签: math vector geometry angle

对于在笛卡尔坐标系中移动的粒子(忽略z轴),如果给定速度的x和y分量,如何计算行进角?

在有人说这不是编程相关之前,我现在正在编程,但是,我不知道矢量数学。

例如,假设速度的x和y值分别为5.0和-1.5,我将如何计算角度?

6 个答案:

答案 0 :(得分:4)

您需要atan2

  

对于任何真实参数xy都不等于零,atan2(y, x)是平面的正x轴与坐标给出的点之间的弧度角度(x, y)就可以了。

答案 1 :(得分:4)

在Javascript中,我会使用Math.atan2(1.5, 5.0)。要转换为度数,请使用Math.atan2(1.5, 5.0)/(Math.PI/180)。在维基百科上:http://en.wikipedia.org/wiki/Atan2

答案 2 :(得分:3)

x轴的弧度角由下式给出:

arctan(vy / vx);  // vx > 0

您还需要处理案例vx < 0

如果您想要轴承与真北,那么您可能需要:

double bearing = 90 - arctan(vy / vx) * 360 / 2 / M_PI;

答案 3 :(得分:1)

坡度的反正切将为您提供所需的信息。

答案 4 :(得分:1)

角度是y / x的反正切值。许多语言在数学库中都有一个带有x和y参数的四象限反正切函数。

答案 5 :(得分:1)

你必须要小心它们之间的角度。 Arctangent,atan(y / x),将为您提供相对于正x轴的角度,但请确保这是您需要的。