Interface Rotation<T extends Rotation<?>>

  • All Superinterfaces:
    javolution.lang.Immutable, javolution.lang.Realtime, javolution.lang.ValueType
    All Known Implementing Classes:
    AbstractRotation, AxisAngle, DCMatrix, EulerAngles, Quaternion

    public interface Rotation<T extends Rotation<?>>
    extends javolution.lang.ValueType, javolution.lang.Realtime

    This class represents a relative orientation (attitude or rotation transformation) between two different reference frames; B wrt A or BA. It can be used to transform coordinates in reference frame A to reference frame B (A2B).

    Modified by: Joseph A. Huwaldt

    Version:
    December 12, 2013
    Author:
    Joseph A. Huwaldt Date: October 22, 2009
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static Rotation IDENTITY
      A Rotation object that represents no relative change in orientation.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      T copy()
      Returns an independent copy of this attitude transform.
      T times​(Rotation<?> that)
      Returns the product of this attitude transformation and another.
      DCMatrix toDCM()
      Returns a direction cosine transformation matrix from this attitude transformation.
      Quaternion toQuaternion()
      Returns a quaternion representing this attitude transformation.
      <Q extends javax.measure.quantity.Quantity>
      Vector3D<Q>
      transform​(Coordinate3D<Q> v)
      Transforms a 3D vector from frame A to B using this attitude transformation.
      T transpose()
      Returns the spatial inverse of this transformation: AB rather than BA.
      • Methods inherited from interface javolution.lang.Realtime

        toText
    • Field Detail

      • IDENTITY

        static final Rotation IDENTITY
        A Rotation object that represents no relative change in orientation.
    • Method Detail

      • transform

        <Q extends javax.measure.quantity.Quantity> Vector3D<Q> transform​(Coordinate3D<Q> v)
        Transforms a 3D vector from frame A to B using this attitude transformation.
        Parameters:
        v - the vector expressed in frame A.
        Returns:
        the vector expressed in frame B.
      • transpose

        T transpose()
        Returns the spatial inverse of this transformation: AB rather than BA.
        Returns:
        this'
      • times

        T times​(Rotation<?> that)
        Returns the product of this attitude transformation and another. If this attitude transform is BA and that is AC then the returned value is: BC = BA · AC (or C2B = A2B · C2A).
        Parameters:
        that - the attitude transform multiplier.
        Returns:
        this · that
      • copy

        T copy()
        Returns an independent copy of this attitude transform.
        Specified by:
        copy in interface javolution.lang.ValueType