to_homochoric#
- Rotation.to_homochoric() Homochoric [source]#
Return the unit quaternions as homochoric vectors [Rowenhorst et al., 2015].
- Returns:
ho
Homochoric vectors parallel to the axes of rotation with lengths equal to \(\left[\frac{3}{4}\cdot(\theta - \sin(\theta))\right]^{1/3}\), where \(\theta\) is the angle of rotation.
See also
Notes
Homochoric vectors are often used for plotting orientations as they create an isomorphic (though not angle-preserving) mapping from the non-euclidean orientation space into Cartesian coordinates. Additionally, unlike Rodrigues vectors, all rotations map into a finite space, bounded by a sphere of radius \(\pi\).
Examples
A 3-fold rotation about the [111] axis
>>> from orix.quaternion import Quaternion >>> Q = Quaternion.from_axes_angles([1, 1, 1], 120, degrees=True) >>> ho = Q.to_homochoric() >>> ho Homochoric (1,) [[0.5618 0.5618 0.5618]]