How to determine Euler angles of ZYZ rotations?

1.2k Views Asked by At

Consider a point $\mathbf{P}=(x \ y \ z)^\text{T}$ which is transformed into $\mathbf{P'}=(x' \ y' \ z')^\text{T}$ in counterclockwise direction according to the ZYZ convention as follows:

$\begin{pmatrix} c_\alpha c_\beta c_\gamma -s_\alpha s_\gamma & -c_\alpha c_\beta s_\gamma - s_\alpha c_\gamma & c_\alpha s_\beta \\ s_\alpha c_\beta c_\gamma +c_\alpha s_\gamma & -s_\alpha c_\beta s_\gamma + c_\alpha c_\gamma & s_\alpha s_\beta \\ -s_\beta c_\gamma & s_\beta s_\gamma & c_\beta \end{pmatrix} $ $\begin{pmatrix} x \\ y\\ z\\ \end{pmatrix} = $ $\begin{pmatrix} x' \\ y'\\ z'\\ \end{pmatrix}$,

where $\alpha, \gamma \in [0,2\pi)$, $\beta \in [0,\pi)$ together with $c_\phi=\cos(\phi)$, $s_\phi=\sin(\phi)$, and $\phi \in \{ \alpha, \beta, \gamma \}$. Is there any chance to express the triple of angles $(\alpha,\beta, \gamma)$ as a function of $\mathbf{P}$ and $\mathbf{P'}$?

1

There are 1 best solutions below

11
On BEST ANSWER

You can use

$$\tan\alpha=\frac{s_\alpha s_\beta}{c_\alpha s_\beta},$$

$$\tan\beta=\frac{\sqrt{(c_\alpha s_\beta)^2+(s_\alpha s_\beta)^2}}{c_\beta}=\frac{\sqrt{(s_\beta c_\gamma)^2+(s_\beta s_\gamma)^2}}{c_\beta},$$

$$\tan\gamma=\frac{s_\beta s_\gamma}{s_\beta c_\gamma}.$$

There is a degenerate case, when $s_\beta=0$. Then the matrix simplifies and you can adapt the formula. But you will notice that the angles are no more uniquely defined.