Create rotation angles from direction cosine matrix
[
calculates the rotation angles, rotationAng1
rotationAng2
rotationAng3
] = dcm2angle(dcm
)rotationAng1
,
rotationAng2
, rotationAng3
, for a direction cosine
matrix, dcm
. This function uses a passive transformation between two
coordinate systems.
[
calculates the rotation angles for a specified rotation sequence,
rotationAng1
rotationAng2
rotationAng3
] = dcm2angle(dcm
,rotationSequence
)rotationSequence
.
[
calculates the rotation angles for a specified angle constraint, rotationAng1
rotationAng2
rotationAng3
] = dcm2angle(___,lim
)lim
.
Specify lim
after all other input arguments.
[
calculates the rotation angles and performs an action if the direction cosine matrix is not
orthogonal. Specify rotationAng1
rotationAng2
rotationAng3
] = dcm2angle(___,action
)action
after all other input arguments.
[
calculates the rotation angles and uses a rotationAng1
rotationAng2
rotationAng3
] = dcm2angle(___,tolerance
)tolerance
level to evaluate
if the direction cosine matrix is orthogonal. Specify tolerance
after
all other input arguments.
The 'Default'
limitations for the 'ZYX'
,
'ZXY'
, 'YXZ'
, 'YZX'
,
'XYZ'
, and 'XZY'
implementations generate an
rotationAng2
angle that lies between ±90 degrees, and
rotationAng1
and rotationAng3
angles that lie
between ±180 degrees.
The 'Default'
limitations for the 'ZYZ'
,
'ZXZ'
, 'YXY'
, 'YZY'
,
'XYX'
, and 'XZX'
implementations generate a
rotationAng2
angle that lies between 0–180 degrees, and
rotationAng1
and rotationAng3
angles that lie
between ±180 degrees.
The 'ZeroR3'
limitations for the 'ZYX'
,
'ZXY'
, 'YXZ'
, 'YZX'
,
'XYZ'
, and 'XZY'
implementations generate a
rotationAng2
angle that lies between ±90 degrees, and
rotationAng1
and rotationAng3
angles that lie
between ±180 degrees. However, when rotationAng2
is ±90
degrees, rotationAng3
is set to 0 degrees.
The 'ZeroR3'
limitations for the 'ZYZ'
,
'ZXZ'
, 'YXY'
, 'YZY'
,
'XYX'
, and 'XZX'
implementations generate a
rotationAng2
angle that lies between 0–180 degrees, and
rotationAng1
and rotationAng3
angles that lie
between ±180 degrees. However, when rotationAng2
is 0 or ±180
degrees, rotationAng3
is set to 0 degrees.
angle2dcm
| dcm2quat
| quat2angle
| quat2dcm