Преобразуйте кватернион в углы поворота
[r1 r2 r3] = quat2angle(q)
[r1 r2 r3] = quat2angle(q, s)
[r1 r2 r3] = quat2angle(q)
вычисляет набор углов поворота, r1
, r2
, r3
, для данного кватерниона, q
. q
является m
-by-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'
, 'XYZ'
, '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'
, 'XYZ'
и реализаций 'XZY'
генерируют угол r2
, который находится между ±90 градусами, и r1
и углами r3
, которые находятся между ±180 градусами.
Ограничения для 'ZYZ'
, 'ZXZ'
, 'YXY'
, 'YZY'
, 'XYX'
и реализаций 'XZX'
генерируют угол r2
, который находится между 0 и 180 градусами, и r1
и углами r3
, которые находятся между ±180 градусами.
angle2dcm
| angle2quat
| dcm2angle
| dcm2quat
| quat2dcm