Main Content

eul2tform

オイラー角から同次変換への変換

説明

tform = eul2tform(eul) は、一連のオイラー角 eul を、同次変換行列 tform に変換します。変換行列を使用する場合、変換行列に対して変換する座標を左から掛けます (右から掛けるのではなく)。オイラー角回転の既定の順序は "ZYX" です。

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

すべて折りたたむ

eul = [0 pi/2 0];
tformZYX = eul2tform(eul)
tformZYX = 4×4

    0.0000         0    1.0000         0
         0    1.0000         0         0
   -1.0000         0    0.0000         0
         0         0         0    1.0000

eul = [0 pi/2 pi/2];
tformZYZ = eul2tform(eul,'ZYZ')
tformZYZ = 4×4

    0.0000   -0.0000    1.0000         0
    1.0000    0.0000         0         0
   -0.0000    1.0000    0.0000         0
         0         0         0    1.0000

入力引数

すべて折りたたむ

オイラー回転角 (ラジアン単位)。内因性オイラー回転角の n 行 3 列の配列として指定します。各行は、sequence 引数で定義された順序の 1 つのオイラー角のセットを表します。たとえば、既定の順序 "ZYX" では、eul の各行の形式は [zAngle yAngle xAngle] になります。

例: [0 0 1.5708]

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

  • "ZYX" (既定)

  • "ZYZ"

  • "ZXY"

  • "ZXZ"

  • "YXY"

  • "YZX"

  • "YXZ"

  • "YZY"

  • "XYX"

  • "XYZ"

  • "XZX"

  • "XZY"

それぞれの文字は対応する軸を示します。たとえば、シーケンスが "ZYX" である場合、指定された 3 つのオイラー角は順に z 軸回りの回転、y 軸回りの回転、および x 軸回りの回転として解釈されます。この回転を点に適用すると、軸回転が x、y、z の順に適用されます。

データ型: string | char

出力引数

すべて折りたたむ

同次変換行列。n 個の同次変換行列を含む 4×4×n の配列として指定します。変換行列を使用する場合、変換行列に対して回転する座標を左から掛けます (右から掛けるのではなく)。

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

拡張機能

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

バージョン履歴

R2015a で導入

すべて展開する