Videos

Axis+angle & Euler angles explained

How to get unique Euler angles?

As a consequence, there is a one-to-one correspondence between
Euler angles and rotation matrices only if the Euler angle domains
are restricted, e.g. to ...
alpha in [0,2PI]
beta in [0,PI]
gamma in [0,2PI]

Find equivalent Euler angles

There are three equivalences, one obvious, another less obvious
and a third only applicable in certain circumstances.
The obvious one is that you can always add multiples of 2π to any of the
angles; if you let them range over R, which you must if you want to
get continuous curves, this corresponds to using R3 as the parameter
space instead of the quotient (R/2πZ)3. This equivalence is easy to
handle since you can change the three angles independently, that is,
if you change one of them by a multiple of 2π, you directly get the
same rotation without changing the other two parameters.
What's less obvious is that (referring to this image) the transformation
(α,β,γ)→(α+π,−β,γ+π) leads to the same rotation. (This is why, in order
to get unique angles, β has to be limited to an interval of length π,
not 2π.)
A third equivalence comes into play only if β≡0(modπ), since in this
case α and γ apply to the same axis and changing α+γ doesn't change
the rotation. If your rotations are arbitrary and have no reason
to have β≡0, you won't need to consider this case, though it may
cause numerical problems if you get close to β≡0 (which is one
good reason to use quaternions instead of Euler angles).
These three transformations generate all values of the Euler angles
that are equivalent to each other. Remember that you also have
to consider combinations of them, e.g. you can add multiples
of 2π in (α+π,−β,γ+π) to get further equivalent angles.