メインコンテンツ

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

quat2angle

四元数を回転角度に変換する

説明

[rotationAng1 rotationAng2 rotationAng3] = quat2angle(q) は、指定された四元数q に対して、回転角度のセット rotationAng1rotationAng2rotationAng3 を計算します。四元数は、フレーム A からフレーム B へのパッシブ変換を表します。結果の回転角度は、フレーム A からフレーム B への一連の右手固有のパッシブ回転を表します。

[rotationAng1 rotationAng2 rotationAng3] = quat2angle(q,s) は、指定された四元数q と指定された回転シーケンスs に対して、回転角度のセット rotationAng1rotationAng2rotationAng3 を計算します。

Aerospace Toolbox は、スカラー優先規則を使用して定義された四元数を使用します。この関数は、すべての四元数入力を正規化します。

すべて折りたたむ

この例では、q = [1 0 1 0]から回転角度を決定する方法を示します。

[yaw, pitch, roll] = quat2angle([1 0 1 0])
yaw = 
0
pitch = 
1.5708
roll = 
0

この例では、複数の四元数から回転角度を決定する方法を示します。

q = [1 0 1 0; 1 0.5 0.3 0.1];
[pitch, roll, yaw] = quat2angle(q, 'YXZ')
pitch = 2×1

    1.5708
    0.8073

roll = 2×1

         0
    0.7702

yaw = 2×1

         0
    0.5422

入力引数

すべて折りたたむ

四元数。m 個の四元数を含む m 行 4 列の行列として指定します。q は、最初の列にスカラー番号を持ちます。

データ型: double

3 つの回転角度の回転順序。Zz 軸、Yy 軸、Xx 軸にあります。

データ型: char | string

出力引数

すべて折りたたむ

最初の回転角度。ラジアン単位で m 配列として返されます。

2 番目の回転角度。ラジアン単位で m 配列として返されます。

3 番目の回転角度。ラジアン単位で m 配列として返されます。

制限

  • 'ZYX''ZXY''YXZ''YZX''XYZ'、および 'XZY' の実装では、±90 度の範囲にある rotationAng2 角度と、±180 度の範囲にある rotationAng1 および rotationAng3 角度が生成されます。

  • 'ZYZ''ZXZ''YXY''YZY''XYX'、および 'XZX' の実装では、0 度から 180 度までの範囲の rotationAng2 角度と、±180 度の範囲の rotationAng1 および rotationAng3 角度が生成されます。

バージョン履歴

R2007b で導入