collisionBox

Создайте прямоугольную геометрию столкновения

Описание

Используйте collisionBox создать строившую в начале координат геометрию столкновения поля.

Создание

Синтаксис

Описание

пример

BOX = collisionBox(X,Y,Z) создает выровненную осью геометрию столкновения поля, строившую в начале координат с X, Y, и Z как его длины стороны вдоль соответствующих осей в зафиксированной геометрией системе координат. По умолчанию зафиксированная геометрией система координат располагает с мировой системой координат.

Свойства

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

Длина стороны геометрии поля вдоль x - ось, заданная как положительная скалярная величина. Модули исчисляются в метрах.

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

Длина стороны геометрии поля вдоль y - ось, заданная как положительная скалярная величина. Модули исчисляются в метрах.

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

Длина стороны геометрии поля вдоль z - ось, заданная как положительная скалярная величина. Модули исчисляются в метрах.

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

Положение геометрии столкновения относительно мировой системы координат, заданной как гомогенная матрица 4 на 4. Можно изменить положение после того, как вы создадите геометрию столкновения.

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

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

showПокажите геометрию столкновения

Примеры

свернуть все

Создайте строившую в начале координат геометрию столкновения поля. Длины стороны в x-, y-, и z-направления равняются 3, 1, и 2 метра, соответственно.

box = collisionBox(3,1,2)
box = 
  collisionBox with properties:

       X: 3
       Y: 1
       Z: 2
    Pose: [4x4 double]

Визуализируйте поле.

show(box)
title('Box')

Создайте две гомогенных матрицы преобразования. Первая матрица является вращением вокруг оси z π/2 радианы и вторая матрица являются вращением вокруг оси X π/8 радианы.

matZ = axang2tform([0 0 1 pi/2]);
matX = axang2tform([1 0 0 pi/8]);

Создайте вторую геометрию столкновения поля с теми же размерностями как первое. Измените его положение в продукт этих двух матриц. Продукт соответствует первому вращению вокруг оси z, сопровождаемой попеременно об оси X. Визуализируйте результат.

box2 = collisionBox(3,1,2);
box2.Pose = matZ*matX;
show(box2)
title('Box2')

Введенный в R2019b