-1

Through reading a lot of articles, I understand what gimbals are (at least I think so). And I know that Euler angles follow the rules of gimbals, but why?

  1. Why do Euler angles comply with the rules of gimbals?

  2. If that's the definition, Why don't we reduce the limitation when we define it?

Vaillancourt
  • 16,325
  • 17
  • 55
  • 61
zeng
  • 1
  • 1

1 Answers1

0

The definition of Euler angles inherently includes gimbals.

Let's use Unity's convention as one arbitrary example (technically they're a related convention called Tait-Bryan angles, but nobody calls them that).

An Euler angle triplet (pitch, yaw, roll) means...

  1. Rotate the outermost gimbal, with its axis parallel to the world y axis, by yaw degrees.

  2. Rotate the middle gimbal, with its axis perpendicular to the outer gimbal and parallel to the world x axis when yaw is zero, by pitch degrees.

  3. Rotate the inner gimbal, with its axis perpendicular to the middle gimbal and parallel to the world z axis when yaw and pitch are both zero, by roll degrees.

The net orientation of the object is then the orientation of this inner gimbal, stacking up the individual rotations of the middle and outer gimbals.

There are other Euler angle / Tait-Bryan angle conventions, but they all share this pattern where an arbitrary orientation is built-up from a sequence of rotations about particular axes. As I explain in this answer, when you compose two rotations in sequence, the angle of one changes the axis of the second - and that makes the chained rotation behave like two linked gimbals.

To emphasize: any rotation scheme that tries to decompose an orientation into multiple angles is inherently modelling a set of linked gimbals. That means it will have situations where it loses a degree of freedom because two of its gimbal axes become parallel - gimbal lock - and you need a correspondingly larger change to your angle triplet to get to a nearby orientation in some direction.

To escape this, you need to leave behind the idea of chaining separate rotations with different axes/angles entirely. Instead we can use...

  • Angle-axis representations, where we express a particular orientation as a single rotation around one axis by a particular angle. By allowing arbitrary diagonal axes, we can still reach any orientation we choose this way, without composing multiple rotations in sequence.

  • Quaternions, which are really a special kind of angle-axis representation, dressed up in 4D space with 3 imaginary dimensions. This might seem like a strange choice, but it lets us take advantage of patterns in the multiplication of these imaginary units to compose and interpolate rotations much more easily than other methods.

  • Matrices, which can express any arbitrary affine transformation, including rotations.

All of these methods let us express an orientation "all at once" rather than as a sequence of rotations with different angles around different axes, so they let us break out of the gimbal paradigm that comes with that sequencing.

DMGregory
  • 134,153
  • 22
  • 242
  • 357
  • Thank you for your answer. It makes me understand Euler Angle better. Now I know that it's the definition that makes it the same as the gimbals, but I still have my doubts. Wouldn't it be more convenient and understandable (and without a gimbals lock) if I defined the Euler Angle as a rotation about the x, y, and z axes of the object itself (x, y, and z don't affect each other)? Why take this problematic definition because it is handled well by the underlying algorithm? Or does it have an advantage over my definition? I hope you can understand my question, I am still learning English.. – zeng Apr 20 '21 at 15:54
  • Using the object's own axes doesn't solve the problem, because the object itself then defines the gimbals. Thinking of the rotations "local-out" instead of "world-in" just changes the order to the one I gave above. The world-in version is: 3. roll, 2. pitch, 1. yaw instead, but either way you look at it, it's still the same system and has the same problems. As I emphasized in my answer, any system that models a sequence of rotations by multiple different angles necessarily matches up to a chain of gimbals, and will have the problems that gimbals have. – DMGregory Apr 20 '21 at 15:58