2009-07-04 35 views
0

私は正投影モードで正(反時計回り)と逆回転(時計回り)の両方の回転方向で3Dモデルを回転しようとしています。 glRotatef()は自動的に正回転を実行しますが、私はローテーションを得ることができません。私は以下の方法を試してみましたが、私には結果が出ません:iPhone OpenGL ESでglRotatef()を使って回転を逆転するにはどうすればいいですか?

//(Provide a negative rotation angle of -1 degree) 
    glrotatef(-1.0, 0.0, 1.0, 0.0); 

    //(Set a negative axis) 
    glrotatef(1.0, 0.0, -1.0, 0.0); 

これはOpenGL ES 1.1の制限ですか? OpenGL ESで逆転(時計回り)回転を取得するにはどうすればよいですか?

答えて

2

359度の角度を試してください。

+0

ありがとうございます。これはうまくいった - しかし、なぜですか? – RexOnRoids

+1

360度回転させると、あなたが始まった場所が正確に残ります。 359度は1回転以下です。 –

1

コードで同じ操作を2回実行しています。角度を-1.0のままにして回転軸を反転させた場合は、逆の回転になります。または、回転軸だけを離れて角度を無効にした場合は、逆もまた回転します。代わりに、回転角度を反転して回転軸を反転させたので、同じことを2回行うことになります。

角度がmod 360の高校のジオメトリにも注意してください。これは、回転が359度の理由は、-1度の回転と同じです。

関連する問題