寻找3D速度矢量

时间:2012-02-25 20:31:31

标签: c++ math vector 3d physics

如何找到3D速度矢量?我有起始位置,结束位置和弹丸的速度。

另外,如果目标正在移动,如何找到速度矢量?

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:6)

如果位置的组成部分是xyz,那么你可以分解导弹的移动:

dx = endPosition.x - startPosition.x
dy = endPosition.y - startPosition.y
dz = endPosition.z - startPosition.z

您可以找到总动作:

d = sqrt(dx*dx + dy*dy + dz*dz)

然后你可以计算速度矢量:

vx = dx/d * missileSpeed
vy = dy/d * missileSpeed
vz = dz/d * missileSpeed