Создайте углы поворота из матрицы направляющего косинуса
[r1 r2 r3] = dcm2angle(n)
[r1 r2 r3] = dcm2angle(n,s)
[r1 r2 r3] = dcm2angle(n,s,lim)
[r1 r2 r3] = dcm2angle(n,s,lim,action)
[r1 r2 r3] = dcm2angle(n,s,lim,action,tolerance)
[r1 r2 r3] = dcm2angle(n)
вычисляет набор углов поворота, r1
r2
, r3
, для данной матрицы направляющего косинуса, n
N
3 3 m
матрица, содержащая m
матрицы направляющих косинусов. r1
возвращает m
массив первых углов поворота. r2
возвращает m
массив вторых углов поворота. r3
возвращает m
массив третьих углов поворота. Углы поворота выводятся в радианах. Эта функция применяется только к матрицам направляющих косинусов, которые являются ортогональными с определителем +1. Вращение, используемое в этой функции, является пассивным преобразованием между двумя системами координат.
[r1 r2 r3] = dcm2angle(n,s)
вычисляет набор углов поворота, r1
r2
, r3
, для данной матрицы направляющего косинуса, n
, и заданная последовательность вращения, s
.
Последовательностью вращения по умолчанию является 'ZYX'
, где r1
z
- вращение оси, r2
y
- вращение оси и r3
x
- вращение оси.
Поддерживаемыми последовательностями вращения является 'ZYX'
, 'ZYZ'
, 'ZXY'
, 'ZXZ'
, 'YXZ'
, 'YXY'
, 'YZX'
, 'YZY'
x, y, z
, 'XYX'
, 'XZY'
, и 'XZX'
.
[r1 r2 r3] = dcm2angle(n,s,lim)
вычисляет набор углов поворота, r1
r2
, r3
, для данной матрицы направляющего косинуса, n
, заданная последовательность вращения, s
, и заданное угловое ограничение, lim
lim
задает любой 'Default'
или 'ZeroR3'
. Смотрите Предположения и Ограничения для полных определений угловых ограничений.
[r1 r2 r3] = dcm2angle(n,s,lim,action)
выполняет action
если матрица направляющего косинуса недопустима (не ортогональный).
Предупреждение — Выводит предупреждение и указывает, что матрица направляющего косинуса недопустима.
Ошибка — ошибка Отображений и указывает, что матрица направляющего косинуса недопустима.
Ни один — не выводит предупреждение или ошибку (значение по умолчанию).
[r1 r2 r3] = dcm2angle(n,s,lim,action,tolerance)
использует tolerance
уровень, чтобы оценить, если матрица направляющего косинуса, n
, допустим (ортогональный). tolerance
скаляр, значением по умолчанию которого является eps(2)
(4.4409e-16
). Функция считает матрицу направляющего косинуса допустимой, если эти условия верны:
Транспонирование матричных времен направляющего косинуса само равняется 1
в заданном допуске tolerance
(transpose(n)*n == 1±tolerance
)
Определитель матрицы направляющего косинуса равняется 1
в заданном допуске (det(n) == 1±tolerance
).
Определите углы поворота из матрицы направляющего косинуса:
dcm = [1 0 0; 0 1 0; 0 0 1]; [yaw, pitch, roll] = dcm2angle(dcm) yaw = 0 pitch = 0 roll = 0
Определите углы поворота из нескольких матриц направляющих косинусов:
dcm = [ 1 0 0; 0 1 0; 0 0 1]; dcm(:,:,2) = [ 0.85253103550038 0.47703040785184 -0.21361840626067; ... -0.43212157513194 0.87319830445628 0.22537893734811; ... 0.29404383655186 -0.09983341664683 0.95056378592206]; [pitch, roll, yaw] = dcm2angle(dcm,'YXZ') pitch = 0 0.3000 roll = 0 0.1000 yaw = 0 0.5000
Определите углы поворота из матриц направления, подтвержденных в допуске:
dcm = [ 1 0 0; 0 1 0; 0 0 1]; dcm(:,:,2) = [ 0.85253103550038 0.47703040785184 -0.21361840626067; ... -0.43212157513194 0.87319830445628 0.22537893734811; ... 0.29404383655186 -0.09983341664683 0.95056378592206]; [pitch, roll, yaw] = dcm2angle(dcm,'YXZ','Default','None',0.1) pitch = 0 0.3000 roll = 0 0.1000 yaw = 0 0.5000
'Default'
ограничения для 'ZYX'
, 'ZXY'
, 'YXZ'
, 'YZX'
x, y, z
, и 'XZY'
реализации генерируют r2
угол, который находится между ±90 градусами и r1
и r3
углы, которые находятся между ±180 градусами.
'Default'
ограничения для 'ZYZ'
, 'ZXZ'
, 'YXY'
, 'YZY'
, 'XYX'
, и 'XZX'
реализации генерируют r2
угол, который находится 0–180 градусов и r1
и r3
углы, которые находятся между ±180 градусами.
'ZeroR3'
ограничения для 'ZYX'
, 'ZXY'
, 'YXZ'
, 'YZX'
x, y, z
, и 'XZY'
реализации генерируют r2
угол, который находится между ±90 градусами и r1
и r3
углы, которые находятся между ±180 градусами. Однако, когда r2
±90 градусов, r3
установлен в 0 градусов.
'ZeroR3'
ограничения для 'ZYZ'
, 'ZXZ'
, 'YXY'
, 'YZY'
, 'XYX'
, и 'XZX'
реализации генерируют r2
угол, который находится 0–180 градусов и r1
и r3
углы, которые находятся между ±180 градусами. Однако, когда r2
0 или ±180 градусов, r3
установлен в 0 градусов.
angle2dcm
| dcm2quat
| quat2angle
| quat2dcm