Compute the Euler Axis and Angle Geometrically

Euler's rotation theorem states that any rigid motion that leaves the origin fixed is a rotation about an axis through the origin. Given the images
x'
,
y'
,
z'
of the three unit vectors
x
,
y
,
z
(in which case
(x',y',z')
constitutes a rotation matrix), there are various methods to determine the so-called Euler rotation axis and angle. This Demonstration illustrates a geometric method.

Details

Use the sliders "
ϕ
" (longitude), "
θ
" (latitude) and "
ψ
" (roll) to set the orientation of the orthonormal system
x',y',z'
, which represents a rigid motion of the initial orthonormal system
x,y,z
. The "sphere" and "sectors" buttons may help you see how this works. Given
x'
,
y'
and
z'
, the goal is to determine the axis and angle of the rotation that transforms
x,y,z
to
x',y',z'
.
The rotation maps
x
to
x'
, and hence the rotation axis lies in the bisector plane of the angle
x,O,x'
, since that axis must make equal angles with
x
and
x'
. Similarly, the rotation axis lies in the bisector planes of angles
y,O,y'
and
z,O,z'
.
The first step is to construct the "displacements"
Δx
,
Δy
,
Δz=x'-x,y'-y,z'-z
. These displacement vectors are the normals of the "bisector planes" of the angles
x,O,x'
,
y,O,y'
and
z,O,z'
. If two vectors
v
and
v'
are aligned, then their bisector plane is not uniquely determined (it fills space). These bisector planes intersect in a single line, which is the rotation axis. Its direction can be found as the cross product of a pair of displacement vectors. This results in (a maximum of) three candidate axes. Quantitatively, it is best to take the longest candidate as the axis. The "projections" of the three vector pairs on the plane perpendicular to the axis give (a maximum of) three candidates for the rotation "angle". Again, taking the longest pair is best (a projection could have length zero, in which case it cannot be used to determine the angle). The "info" box shows the numeric values for axis and angle.
You can examine some unlabeled entities with tooltips. You can disable various elements. Control the opacity of the planes with the "plane opacity" slider.

External Links

Euler's Rotation Theorem (Wolfram MathWorld)
Euler Angles
Euler Angles: Precession, Nutation, and Spin
Three Parametrizations of Rotations

Permanent Citation

Tom Verhoeff
​
​"Compute the Euler Axis and Angle Geometrically"​
​http://demonstrations.wolfram.com/ComputeTheEulerAxisAndAngleGeometrically/​
​Wolfram Demonstrations Project​
​Published: March 5, 2021