Main Content

tformfwd

N 次元フォワード空間変換の適用

2 次元および 3 次元の幾何学的変換の場合、関数 tformfwd は推奨されません。代わりに関数 transformPointsForward を使用してください。詳細については、互換性の考慮事項を参照してください。

説明

[X1,X2,...,X_ndims_out] = tformfwd(T,U1,U2,...,U_ndims_in)T で定義された ndims_in から ndims_out への空間変換を座標配列 U1,U2,...,U_ndims_in に適用します。変換により点 [U1(k) U2(k) ...U_ndims_in(k)] を点 [X1(k) X2(k) ... X_ndims_out(k)] にマッピングします。

入力座標配列 ndims_in の数は、T.ndims_in と等しくなければなりません。出力座標配列 ndims_out の数は、T.ndims_out と等しくなければなりません。配列 U1,U2,...,U_ndims_in は任意の次元にできますが、サイズは同じでなければなりません。出力配列 X1,X2,...,X_ndims_out もこのサイズでなければなりません。

X = tformfwd(T,U)T で定義された空間変換を座標配列 U に適用します。

  • U が m 行 ndims_in 列の次元を持つ 2 次元行列の場合、X は m 行 ndims_out 列の次元を持つ 2 次元行列です。tformfwd は、ndims_in から ndims_out への変換を U の各行に適用します。tformfwd は、点 U(k, : ) を点 X(k, : ) にマッピングします。

  • U が (N+1) 次元配列の場合、tformfwd は、点 U(k1, k2, … ,kN, : ) を点 X(k1, k2, … ,kN, : ) にマッピングします。

    size(U,N+1)ndims_in と等しくなければなりません。X は (N+1) 次元配列で、size(X,I)I = 1, … ,N の場合 size(U,I) と等しく、size(X,N+1)ndims_out に等しくなります。

構文 X = tformfwd(U,T) はこの構文の古い形式であり、下位互換性のために引き続きサポートされています。

[X1,X2,...,X_ndims_out] = tformfwd(T,U) は、(N+1) 次元の配列をサイズの等しい N 次元の配列 ndims_out にマッピングします。

X = tformfwd(T,U1,U2,...,U_ndims_in) は、N 次元の配列 ndims_in を 1 つの (N+1) 次元の配列にマッピングします。

すべて折りたたむ

頂点 (0,0)、(6,3)、(-2,5) をもつ三角形を頂点 (-1,-1)、(0,-10)、(4,4) をもつ三角形にマッピングするアフィン変換を作成します。

u = [ 0   6  -2]';
v = [ 0   3   5]';
x = [-1   0   4]';
y = [-1 -10   4]';
tform = maketform('affine',[u v],[x y]);

tformfwd を適用することによってマッピングを検証します。結果は x および y と等しくなります。

[xm,ym] = tformfwd(tform,u,v)
xm = 3×1

    -1
     0
     4

ym = 3×1

    -1
   -10
     4

入力引数

すべて折りたたむ

空間変換。TFORM 構造体として指定します。関数 maketform を使用して T を作成します。

データ型: struct

入力座標点。数値配列として指定します。U のサイズと次元には、使用される構文に応じて追加の制限があります。

データ型: double

入力座標点。複数の数値配列として指定します。U1,U2,...,U_ndims_in のサイズと次元には、使用される構文に応じて追加の制限があります。

データ型: double

出力引数

すべて折りたたむ

出力点の座標配列。数値配列として返されます。X のサイズと次元には、使用される構文に応じて追加の制限があります。

出力点の座標。複数の数値配列で返されます。X1,X2,...,X_ndims_out のサイズと次元には、使用される構文に応じて追加の制限があります。

拡張機能

バージョン履歴

R2006a より前に導入

すべて展開する