0

I have a 3*3 rotation matrix R. Now, it is possible to solve this rotation matrix to get the euler angles of the rotation matrix. (https://truesculpt.googlecode.com/hg-history/38000e9dfece971460473d5788c235fbbe82f31b/Doc/rotation_matrix_to_euler.pdf)

Now, Suppose I have a situation where I use the rotation matrix for rotating a body about an axis. Now, For each infinitesimal rotation, I solve the rotation matrix for its euler angles sets. Since There multiple sets (2 in reality) of euler angles come up as solutions, how do I ensure (in code) that I pick the euler angle set such that the rotation of the body is continuous?

Ananth Saran
  • 207
  • 2
  • 17

1 Answers1

1

What i have read, euler angles are not well suited for interpolation.
Use Quarternions instead, at least for the interpolation (transition).

AlexWien
  • 28,470
  • 6
  • 53
  • 83
  • :Thank! I will have a look at this approach. – Ananth Saran Jun 21 '13 at 08:53
  • :I did up some reading on Quaternions.My doubt is that I still need the rotation about the x-axis, the y-axis and the z-axis , so that means I have no choice but to deal with Euler angles right? – Ananth Saran Jun 21 '13 at 13:15
  • Convert EulerA, EulerB to QuaternionA QuartB, then interpolate QuartA between QuartB and convert each interpolated Quart back to Euler. This is like logarithmics in math: convert, calculate in converted format, and convert the calculation result back. – AlexWien Jun 21 '13 at 13:17