0

2D ビューポートを参照して 3D Cylinder を回転させようとしています。円柱の半径と 2D 移動がわかっている場合、どのように円柱の回転角度を知ることができますか?

知りたいことのイラスト

4

1 に答える 1

1

円柱が A から B に回転するとします。さらに、A が水平からθ反時計回りに、B が時計回りにあるとします。θしたがって、A と B の間の角度は です

A の y 座標は で与えられr*sin(θ)、B の y 座標は単純に-r*sin(θ)です。

したがって、2*r*sin(θ) = D(パン距離)

を解くθ:

θ = asin(D/(2*r))

(ここで、asin は逆正弦関数です)

もう1つの(おそらくより堅牢な)方法は、三角形の垂線と底辺を計算してからatan2(perp,base).

垂線は単純D/2に で、底辺はsqrt(R*R - D*D/4)です。

于 2013-03-27T20:22:04.170 に答える