2个向量之间的度数?

时间:2011-08-17 12:38:48

标签: math vector lua

这个学位计算有什么问题?

我选择了2个矢量,它们的度数应该是90°。

我用cos,cos ^ -1尝试了它,没有cos计算。但我的代码输出是:
0(无成本计算)
1(cosinus)
1.5707963267949(cosinus ^ -1(acos))

local square = math.sqrt;
local weaponVector, hitVector = , {x = 0, y = 0, z = 1,}, {x = 0, y = 1, z = 0,};
local xW, yW, zW = weaponVector.x, weaponVector.y, weaponVector.z;
local xH, yH, zH = hitVector.x, hitVector.y, hitVector.z;
local angleBetweenWeaponAndHitDirection = math.acos(math.abs(xW*xH+yW*yH+zW*zH)
            / (square(xW*xW+yW*yW+zW*zW) * square(xH*xH+yH*yH+zH*zH)));
if (angleBetweenWeaponAndHitDirection>180) then
    angleBetweenWeaponAndHitDirection = 360-angleBetweenWeaponAndHitDirection;
end
print(angleBetweenWeaponAndHitDirection)
print(math.cos(angleBetweenWeaponAndHitDirection))
print(math.acos(angleBetweenWeaponAndHitDirection))

3 个答案:

答案 0 :(得分:9)

1.57079是正确答案,但在Radians

要将弧度转换为度数,请乘以180 / pi。

答案 1 :(得分:1)

  

1.5707963267949(cosinus ^ -1(acos))

看起来像90度(pi / 2)

答案 2 :(得分:1)

数学函数与弧度一起使用,因此您的比较和操作必须也是弧度,而不是度数。