Main Content

trvec2tform

並進ベクトルの同次変換への変換

説明

tform = trvec2tform(trvec) は、並進ベクトル trvec の直交座標表現を、対応する同次変換 tform に変換します。変換行列を使用する場合、変換行列に対して変換する座標を左から掛けます (右から掛けるのではなく)。

すべて折りたたむ

trvec = [0.5 6 100];
tform = trvec2tform(trvec)
tform = 4×4

    1.0000         0         0    0.5000
         0    1.0000         0    6.0000
         0         0    1.0000  100.0000
         0         0         0    1.0000

入力引数

すべて折りたたむ

並進ベクトルの直交座標表現。tform が 3×3×n の配列の場合は n 行 2 列の行列として指定し、tform が 4×4×n の配列の場合は n 行 3 列の行列として指定します。n は並進ベクトルの数です。各ベクトルの形式は [x y] または [x y z] です。

例: [0.5 6 100]

出力引数

すべて折りたたむ

同次変換。3×3×n の配列または 4×4×n の配列として返されます。n は同次変換の数です。回転行列を使用する場合、回転行列に対して回転する座標を左から掛けます (右から掛けるのではなく)。

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

2 次元同次変換行列の形式は次のとおりです。

T=[r11r12t1r21r22t2001]

3 次元同次変換行列の形式は次のとおりです。

T=[r11r12r13t1r21r22r23t2r31r32r33t30001]

詳細

すべて折りたたむ

同次変換行列

同次変換行列は、直交回転と並進で構成されます。

2 次元変換

2 次元変換には、z 軸についての回転 θ (

Rz(θ)=[cosθsinθsinθcosθ]

) および x 軸と y 軸に沿った並進 (

t=[xy]

) が含まれているため、次の形式の 2 次元変換行列になります。

T=[Rt01×21]=[I2t01×21]·[R001×21]

3 次元変換

3 次元変換には、x 軸、y 軸、および z 軸についての 3 つの回転 (

Rx(ϕ)=[1000cosϕsinϕ0sinϕcosϕ],Ry(ψ)=[cosψ0sinψ010sinψ0cosψ],Rz(θ)=[cosθsinθ0sinθcosθ0001]

) に関する情報が含まれており、乗算後には xyz 軸についての回転 (

Rxyz=Rx(ϕ)Ry(ψ)Rz(θ)=[cosϕcosψcosθsinϕsinθcosϕcosψsinθsinϕcosθcosϕsinψsinϕcosψcosθ+cosϕsinθsinϕcosψsinθ+cosϕcosθsinϕsinψsinψcosθsinψsinθcosψ]

) になります。また、x 軸、y 軸、および z 軸に沿った並進 (

t=[xyz]

) が含まれています。したがって、次の形式の 3 次元変換行列になります。

T=[Rt01x31]=[I3t01x31]·[R001x31]

拡張機能

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

バージョン履歴

R2015a で導入

すべて展開する