如何计算具有角度的每个轴上的速度?

问题描述:

我有一个3D空间,我可以用鼠标右键/左键和上/下移动我的太空船。我能够计算在一个平面上飞船的速度,具有蒙皮(阿尔法角),如:如何计算具有角度的每个轴上的速度?

float cosf = cos(alfa * M_PI/180.0); 
float sinf = sin(alfa * M_PI/180.0); 

vxm = + cosf*vx - sinf*vz; 
vym = vy; 
vzm = + sinf*vx + cosf*vz; 

但是我无法添加β角(船的垂直面)时,我如何计算每个轴上的三个速度,具有阿尔法和Beta角?

+0

这不是一个用于https://math.stackexchange.com/ – DanteTheSmith

如果速度的大小为V和Beta是V方向和OXY平面之间的角度,然后

v_z = V * Sin(Beta) 
v_x = V * Cos(Beta) * Cos(Alpha) 
v_y = V * Cos(Beta) * Sin(Alpha)