Создайте матрицу преобразования 4 на 4
M = makehgtform
M = makehgtform ('переводят', [tx ty tz]),
M = makehgtform ('шкала', s)
M = makehgtform ('шкала', [sx, sy, sz])
M = makehgtform ('xrotate', t)
M = makehgtform ('yrotate', t)
M = makehgtform ('zrotate', t)
M = makehgtform ('axisrotate', [ax, да, азимут], t)
Используйте makehgtform, чтобы создать матрицы преобразования для перевода, масштабирования и вращения графических объектов. Примените преобразование к графическим объектам путем присвоения преобразования свойству Matrix родительского объекта преобразования.
M = makehgtform возвращает единичное преобразование.
M = makehgtform('translate',[tx ty tz]) или M = makehgtform ('переводят', tx, ty, tz) возвращает преобразование, которое переводит вдоль оси X tx вдоль оси Y ty, и вдоль оси z tz.
M = makehgtform('scale',s) возвращает преобразование, которое масштабируется однородно вдоль x-, y-, и осей z.
M = makehgtform('scale',[sx,sy,sz]) возвращает преобразование, которое масштабируется вдоль оси X sx вдоль оси Y sy, и вдоль оси z sz.
M = makehgtform('xrotate',t) возвращает преобразование, которое вращает вокруг оси X радианами t.
M = makehgtform('yrotate',t) возвращает преобразование, которое вращает вокруг оси Y радианами t.
M = makehgtform('zrotate',t) возвращает преобразование, которое вращает вокруг оси z радианами t.
M = makehgtform('axisrotate',[ax,ay,az],t) Вращает вокруг оси [ax ay az] радианами t.
Обратите внимание на то, что можно задать несколько операций в одном вызове makehgtform, и MATLAB возвращает матрицу преобразования, которая является результатом конкатенации всех заданных операций. Например,
m = makehgtform('xrotate',pi/2,'yrotate',pi/2);эквивалентен
mx = makehgtform('xrotate',pi/2);
my = makehgtform('yrotate',pi/2);
m = mx*my;