Euler angles


This entry is part 3 of 5 in the series Ball joint
Hey. This page is more than 3 years old! The content here is probably outdated, so bear that in mind. If this post is part of a series, there may be a more recent post that supersedes this one.

I’d never come across Euler angles (or noticed them if I had), but they are an(other) way of describing the rotation of a rigid object in space, given a known fixed axis. We all came to rotational matrices at school as the base option & I dabbled with quaternions too at some stage.

Well. This is another one…

To my mind, Euler angles are perhaps the most straightforward (obvious?) conceptually – compared to matrices and quaternions. I suspect there is a price computationally.

I struggled with the Wikipedia images, maybe try envisage them as:

  • A rotation \alpha around the object 1st axis (typically X), then;
  • A rotation \beta around the object’s newly positioned 2nd axis, then
  • A rotation \gamma around the object’s newly positioned 3rd axis.

Why the interest?

Because this paper uses them (and I am on a mission!). Euler angles seem to be fairly ubiquitous in robotics too, so might as well see what they are.

Anyway, I wrote a little thing on codepen, using three.js to understand Euler angles (and touch up on three.js).

\alpha , \beta & \gamma are as per above. Red is X, green is Y and blue is Z.

[codepen_embed height=”600″ slug_hash=”KKmPQwZ” user=”aegis1980″]See the Pen
Three.js Euler Angles
by Jon Robinson (@aegis1980)
on CodePen.[/codepen_embed]

Series navigation

<< Active Ball Mechanism Joint – Monopole gearActive Ball Joint. Too hard box, for now >>