exponenta event banner

rigid3d

3-D жесткое геометрическое преобразование

Описание

A rigid3d объект хранит информацию о 3-D жестком геометрическом преобразовании и обеспечивает возможность прямого и обратного преобразований.

Создание

Описание

tform = rigid3d создает значение по умолчанию rigid3d объект, соответствующий преобразованию идентификатора.

tform = rigid3d(t) создает rigid3d объект на основе указанной матрицы прямого жесткого преобразования, t. t входные установки T собственность.

пример

tform = rigid3d(rot,trans) создает rigid3d объект, основанный на повороте, rotи перевод, trans, компоненты преобразования. rot устанавливает Rotation собственность. trans устанавливает Translation собственность.

Свойства

развернуть все

Прямое жесткое преобразование, указанное как числовая матрица 4 на 4. Эта матрица должна быть однородной матрицей преобразования, которая удовлетворяет условию постумножения, заданному:

[xyz1] = [uvw1] * T

T имеет форму

[r11r12r130;... r21r22r230;... r31r32r330;... txtytz1];

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

Это свойство доступно только для чтения.

Размерность геометрического преобразования, заданная как положительное целое число.

Компонент поворота преобразования, заданный как числовая матрица 3 на 3. Эта матрица ротации удовлетворяет условию после умножения, заданному

[xyz] = [uvw] * R

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

Компонент преобразования, заданный как 3-элементный числовой вектор строки. Этот вектор перевода удовлетворяет условию, заданному

[xyz] = [uvw] + t

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

Функции объекта

invertИнвертировать геометрическое преобразование
outputLimitsНайти выходные пространственные пределы, заданные входными пространственными пределами
transformPointsForwardПрименение прямого геометрического преобразования
transformPointsInverseПрименение обратного геометрического преобразования

Примеры

свернуть все

Задайте угол поворота в градусах и создайте матрицу поворота 3 на 3.

theta = 30;
rot = [ cosd(theta) sind(theta) 0; ...
       -sind(theta) cosd(theta) 0; ...
       0 0 1];

Укажите величину горизонтального, вертикального и глубинного перемещения соответственно.

trans = [2 3 4];

Создать rigid3d объект, выполняющий поворот и перемещение.

tform = rigid3d(rot,trans)
tform = 
  rigid3d with properties:

       Rotation: [3x3 double]
    Translation: [2 3 4]

Представлен в R2020a