exponenta event banner

tformfwd

Применение прямого пространственного преобразования

Описание

пример

[X,Y] = tformfwd(T,U,V) применяет 2D-to-2D прямое пространственное преобразование, определенное в T для координат массивов U и V, отображение точки [U(k) V(k)] в точку [X(k) Y(k)].

Оба T.ndims_in и T.ndims_out должно быть равно 2. U и V обычно являются векторами столбцов, но они могут иметь любую размерность. X и Y имеют тот же размер, что и U и V.

[X1,X2,...,X_ndims_out] = tformfwd(T,U1,U2,...,U_ndims_in) применяет ndims_inКому-ndims_out пространственное преобразование определено в T в массивы координат 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 является 2-D матрицей с размерами m-by-ndims_in, X является 2-D матрицей с размерами m-by-ndims_out. tformfwd применяет ndims_inКому-ndims_out преобразование в каждую строку U. tformfwd отображает точку U(k,:) в точку X(k,:).

  • Когда U является (N + 1) -мерным массивом,tformfwd отображает точку U(к1, к2,..., кН,:) в точку X(к1, к2,..., кН,:).

    size(U,N+1) должны равняться ndims_in. X является (N + 1) -мерным массивом, сsize(X,I) равно size(U,I) для I = 1,..., N и size(X,N+1) равно ndims_out.

Синтаксис X = tformfwd(U,T) является более старой формой этого синтаксиса, которая по-прежнему поддерживается для обратной совместимости.

[X1,X2,...,X_ndims_out] = tformfwd(T,U) сопоставляет один (N + 1) -мерный массив сndims_out N-мерные массивы одинакового размера.

X = tformfwd(T,U1,U2,...,U_ndims_in) карты ndims_in N-мерные массивы в один (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 структура пространственного преобразования. Создать T использование maketform, fliptform, или cp2tform.

Типы данных: struct

Входные точки координат, заданные как числовой массив. Размер и размерность U может иметь дополнительные ограничения в зависимости от используемого синтаксиса.

Типы данных: double

Входные точки координат, заданные как числовой массив. V должен быть того же размера, что и U.

Типы данных: double

Входные точки координат, заданные как несколько числовых массивов. Размер и размерность U1,U2,...,U_ndims_in может иметь дополнительные ограничения в зависимости от используемого синтаксиса.

Типы данных: double

Выходные аргументы

свернуть все

Координатный массив выходных точек, возвращаемый в виде числового массива. Размер и размерность X может иметь дополнительные ограничения в зависимости от используемого синтаксиса.

Координатный массив выходных точек, возвращаемый в виде числового массива. Y имеет тот же размер, что и V.

Координаты выходных точек, возвращаемые в виде нескольких числовых массивов. Размер и размерность X1,X2,...,X_ndims_out может иметь дополнительные ограничения в зависимости от используемого синтаксиса.

См. также

| | |

Представлен до R2006a