2012-04-04 8 views
7

私は3D回転で作業しようとしていますが、フレームワークが計算をどのようにしているかはわかりません。例えばiOSローテーションマトリックスの説明

Iは、このデータを取得する:

ヨー-1.010544ピッチ0.508249ロール1.128918

そしてIは、対応する回転行列

  • 0.599901 -0.128495 -0.789689
  • 0.740043 0.464230 0.486649を印刷
  • 0.304065 -0.876344 0.373584

APIとwikiを読んだあと、オイラーアングルからrotationmatrixを作成する一般的な方法がなければならないと確信しています。私はこれらのすべてを試しましたhere、結果はありません。

私は何かが恋しいですか?これはどのように行われますか?

+0

回転行列がどのように働くか(一般的にはグラフィックスに関連しています):[変換後の数学](http://ronnqvi.st/the-math-behind-transforms/)。 「回転」という見出しにスクロール –

答えて

2

まあ、iOSまたはCoreMotionは両方を提供します。 RotationMatrixとオイラー角表現。 ドキュメントはhereです。

この計算の仕組みに興味がある場合は、hereをご覧ください。 合計すると:各オイラー角は、1つの単位軸を中心とする回転を表す回転行列で表すことができます。 3つの角度があるので、それらを組み合わせる必要があります。しかし、注意してください!回転行列が乗算される順序が異なるため、オイラー角は明確ではありません。

編集:クォータニオン計算にリンクしました。または私は完全に間違っていますか?

+0

ありがとう、私はその間に解決しました! – GooKSL

+0

* "注意してください!オイラー角はあいまいではありません" * – Jacksonkr