[Math] Known conversion between Euler angle sequences

geometryrotations

Is there a simple close form formula for converting angles in one Euler angle sequence to another?

For example if one knows the Tait–Bryan angles (pitch, yaw, roll or XYZ) can one easily find the Euler angles $\alpha,\beta, \gamma$ corresponding to the sequence $ZX'Z''$?

I realize that I could write down the explicit matrix form for both, but I suspect that would result in some rather intractable equations.
$$\text{Tait–Bryan angles}\quad\quad\quad\quad\quad\text{Euler angles}$$
$\quad\quad\quad\quad\quad\quad$
enter image description here $\quad$
enter image description here

Best Answer

Actually, if you write out the explicit matrix form of each transformation, there are some fairly obvious ways to extract the angles from the entries in the matrix, although there are some special cases to observe due to the fact that some of the entries may be zero. You can find procedures for obtaining the angles in http://www.sedris.org/wg8home/Documents/WG80485.pdf (in particular sections 3.2.4.1 and 3.2.4.2) and in several other places.

This suggests that you could convert from one system to the other by converting a given set of angles to a rotation matrix and then converting the matrix to the angles in the other system. In practice, you could save a few steps by computing the entries of the matrix only when they are required by the procedure for extracting the second set of angles.