2

この質問を別の言い方で言うと、対角線の長さと 2 つの回転角がある直方体の長さ、幅、高さを見つけるにはどうすればよいですか。

これは、ユーザーが上下の回転 (UP および DOWN 矢印キー)、左右の回転 (LEFT および RIGHT 矢印キー) を変更し、オブジェクトを加速および反転 (Q および w) できる 3D ゲーム用です。各フレーム、オブジェクト x、y、z は、現在の速度と上下左右の回転に従って更新されます。

4

2 に答える 2

3

alpha左右の角度、betaが上下の角度の場合、

v.x = speed * sin (alpha) * cos(beta)
v.y = speed * sin (beta)
v.z = speed * cos (alpha) * cos(beta)

回転が方向 (0, 0, 1) を返さないと仮定します。

于 2013-01-23T21:08:30.037 に答える
1

この立方体は、対角線が原点から始まり、他の点まで伸びる静的な参照フレームを使用して測定されると想定しています。同じ対角線を持つ可能性のある直方体は無数にあるため、対角線の長さだけでは任意の直方体の幅、高さ、長さを決定できないため、そうでない場合、この質問には決定的な答えはありません。

あなたが使用しているのは球座標系のようです: http://en.wikipedia.org/wiki/Spherical_coordinate_system#Cartesian_coordinates

記事から:

x = r sin θ cos φ
y = r sin θ sin φ
z = r cos θ

rあなたの対角線の長さです。θ回転角度を決定し、それにφ基づいて決定する必要があります。それらは適切な傾斜角と方位角ではない可能性があります。これらの角度が球座標でどのように定義されるかについての詳細は、記事を参照してください。

于 2013-01-23T21:34:50.377 に答える