Thanks Sander. A less exotic workaround is to orthogonalize the matrix when needed:
m = EulerMatrix@{0.52, 1.05, 1.22} n = Round[m, 0.000001] In[3]:= EulerAngles@Orthogonalize@n Out[3]= {0.52, 1.05, 1.22}
Hi Hans,
It checks:
Chop[Det[n] - 1] == 0
which fails for you. If you are confident this is 'ok' (i.e. less stringent than what Chop thinks is 0). You can also call the sub-function directly:
Chop
Reverse@AffineTransformsDump`RPYijk[m, {3, 2, 3}]
giving:
{0.52, 1.05, 1.22}