Today I read a paper titled “The Gibbs Representation of 3D Rotations”
The abstract is:
This paper revisits the little-known Gibbs-Rodrigues representation of rotations in a three-dimensional space and demonstrates a set of algorithms for handling it.
In this representation the rotation is itself represented as a three-dimensional vector.
The vector is parallel to the axis of rotation and its three components transform covariantly on change of coordinates.
The mapping from rotations to vectors is 1:1 apart from computation error.
The discontinuities of the representation require special handling but are not problematic.
The rotation matrix can be generated efficiently from the vector without the use of transcendental functions, and vice-versa.
The representation is more efficient than Euler angles, has affinities with Hassenpflug’s Argyris angles and is very closely related to the quaternion representation.
While the quaternion representation avoids the discontinuities inherent in any 3-component representation, this problem is readily overcome.
The present paper gives efficient algorithms for computing the set of rotations which map a given vector to another of the same length and the rotation which maps a given pair of vectors to another pair of the same length and subtended angle.