Rotating an object in a 3 dimensional space by euler angles might be intuitive but comes with some problems. First, the order of applied rotations around the different axis matters. Second, there is gimbal lock.

To overcome this, I thought about converting each angle to a quaternion and multiplying them so that I would end up with a single quaternion to apply. But logically, multiplication of quaternions isn't commutative, too.

So given three values how can I apply them as rotations so that first, the order doesn't matter and second, every possible angle can be represented?


The order inherently matters. If you look to your left and then tilt your chin to where your forehead is, it's different from tilting your chin to your forehead then moving your nose to where the left ear was.

  • $\begingroup$ That's why I am looking for another representation for rotation, besides yaw, pitch and roll. It should use three values, too, and somehow must be orientation independent. $\endgroup$ – danijar Apr 13 '13 at 8:46
  • $\begingroup$ Well, I suppose you can use pointing your nose in a direction and having a separate variable for rotation relative to the neck. $\endgroup$ – Loki Clock Apr 13 '13 at 8:50
  • 1
    $\begingroup$ The problem is not actually the representation as much as the idea of composing rotations. SO(3) itself is noncommutative. $\endgroup$ – Loki Clock Apr 13 '13 at 8:54
  • $\begingroup$ By using quaternions the angles haven't to be applied separately. So that is an alternative representation of rotations. However, it's not practical for me since you can't easily consecutively rotate an object by just consecutively increasing a value. Instead, you have to take care of circular movement of the nose. As writing that, it comes to my mind that I might want to use latitude and longitude for the noes. Is there a term for rotations represented by latitude and longitude direction and roll? $\endgroup$ – danijar Apr 13 '13 at 9:01
  • 1
    $\begingroup$ Yes, I think we have the same idea of it. If you had a steering wheel on a stick pointing out of the center of the sphere, the roll would turn the steering wheel while the other rotations affect the direction it's pointing but not the end of the stick the steering wheel's on. Now replace the wheel with a teddy bear figure so you can tell if it's upside down or right side up, and perform the two rotations. Since neither of the rotations I described are rolls, they should give the same roll value to the teddy bear on a stick at the end. $\endgroup$ – Loki Clock Apr 17 '13 at 3:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.