Преобразуйте кватернион в углы поворота
[r1 r2 r3] = quat2angle(q)
[r1 r2 r3] = quat2angle(q, s)
[r1 r2 r3] = quat2angle(q)
вычисляет набор углов поворота, r1
r2
, r3
, для данного кватерниона, q
Q
m
- 4 матрицы, содержащие m
кватернионы. Каждый элемент q
должно быть вещественное число. q
имеет его скалярный номер как первый столбец.
Углы поворота выводятся в радианах.
r1
Возвращает m
массив первых углов поворота.
r2
Возвращает m
массив вторых углов поворота.
r3
Возвращает m
массив третьих углов поворота.
[r1 r2 r3] = quat2angle(q, s)
вычисляет набор углов поворота, r1
r2
, r3
, для данного кватерниона, q
, и заданная последовательность вращения, s
.
Последовательностью вращения по умолчанию является 'ZYX'
, где r1
z
- вращение оси, r2
y
- вращение оси и r3
x
- вращение оси.
Поддерживаемыми последовательностями вращения является 'ZYX'
, 'ZYZ'
, 'ZXY'
, 'ZXZ'
, 'YXZ'
, 'YXY'
, 'YZX'
, 'YZY'
x, y, z
, 'XYX'
, 'XZY'
, и 'XZX'
.
Определите углы поворота из q = [1 0 1 0].
[yaw, pitch, roll] = quat2angle([1 0 1 0]) yaw = 0 pitch = 1.5708 roll = 0
Определите углы поворота из нескольких кватернионов.
q = [1 0 1 0; 1 0.5 0.3 0.1]; [pitch, roll, yaw] = quat2angle(q, 'YXZ') pitch = 1.5708 0.8073 roll = 0 0.7702 yaw = 0 0.5422
Ограничения для 'ZYX'
, 'ZXY'
, 'YXZ'
, 'YZX'
x, y, z
, и 'XZY'
реализации генерируют r2
угол, который находится между ±90 градусами и r1
и r3
углы, которые находятся между ±180 градусами.
Ограничения для 'ZYZ'
, 'ZXZ'
, 'YXY'
, 'YZY'
, 'XYX'
, и 'XZX'
реализации генерируют r2
угол, который находится между 0 и 180 градусами и r1
и r3
углы, которые находятся между ±180 градусами.
angle2dcm
| angle2quat
| dcm2angle
| dcm2quat
| quat2dcm