最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

rotm2eul

回転行列のオイラー角への変換

説明

eul = rotm2eul(rotm) は、回転行列 rotm を対応するオイラー角 eul に変換します。入力回転行列は、回転について左から掛ける形式になっていなければなりません。オイラー角回転の既定の順序は "ZYX" です。

eul = rotm2eul(rotm,sequence) は、回転行列をオイラー角に変換します。オイラー角は軸回転シーケンス sequence で指定されます。オイラー角回転の既定の順序は "ZYX" です。

すべて折りたたむ

rotm = [0 0 1; 0 1 0; -1 0 0];
eulZYX = rotm2eul(rotm)
eulZYX = 1×3

         0    1.5708         0

rotm = [0 0 1; 0 -1 0; -1 0 0];
eulZYZ = rotm2eul(rotm,'ZYZ')
eulZYZ = 1×3

   -3.1416   -1.5708   -3.1416

入力引数

すべて折りたたむ

回転行列。n 個の回転行列を含む 3 x 3 x n の行列として指定します。各回転行列はサイズが 3 行 3 列で、正規直交です。入力回転行列は、回転について左から掛ける形式になっていなければなりません。

メモ

わずかに正規直交でない回転行列は、出力が複素数になることがあります。関数に入力する前に、行列を検証することを検討してください。

例: [0 0 1; 0 1 0; -1 0 0]

オイラー角の軸回転シーケンス。以下のいずれかの string スカラーとして指定します。

  • "ZYX" (既定) – 回転角度の順序が z 軸、y 軸、x 軸の順。

  • "ZYZ" – 回転角度の順序が z 軸、y 軸、z 軸の順。

  • "XYZ" – 回転角度の順序が x 軸、y 軸、z 軸の順。

データ型: string | char

出力引数

すべて折りたたむ

オイラー回転角 (ラジアン単位)。オイラー回転角の n 行 3 列の配列として返されます。各行は 1 つのオイラー角のセットを表します。

例: [0 0 1.5708]

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

参考

トピック

R2015a で導入