Class OrientationRotationMatrix

Object
Orientation
OrientationRotationMatrix
All Implemented Interfaces:
Serializable

public class OrientationRotationMatrix extends Orientation
Orients an object by rotating anti-clockwise with an explicit RotationMatrix.

Before rotation, the entity is presumed to be aligned with the x-axis.

Author:
Owen Feehan
See Also:
  • Constructor Details

    • OrientationRotationMatrix

      public OrientationRotationMatrix()
    • OrientationRotationMatrix

      public OrientationRotationMatrix(RotationMatrix rotationMatrix)
      Creates a new OrientationRotationMatrix instance.
      Parameters:
      rotationMatrix - The rotation-matrix. Once used here, it must be treated as immutable, and its state may not be changed elsewhere.
  • Method Details

    • deriveRotationMatrix

      protected RotationMatrix deriveRotationMatrix()
      Description copied from class: Orientation
      Derives a RotationMatrix that can be applied to rotate an entity anti-clockwise to the current orientation.

      It presumes the existing entity has a neutral orientation along the x-axis.

      Specified by:
      deriveRotationMatrix in class Orientation
      Returns:
      the rotation-matrix.
    • negative

      public Orientation negative()
      Description copied from class: Orientation
      Derives a new Orientation in the opposite (negative) direction to the current instance.

      A unit step from the origin in the current orientation direction, summed with a unit step in the negative direction, should end in the origin.

      Specified by:
      negative in class Orientation
      Returns:
      the new Orientation in the negative direction.
    • numberDimensions

      public int numberDimensions()
      Description copied from class: Orientation
      The dimensionality of space the orientation is valid for.
      Specified by:
      numberDimensions in class Orientation
      Returns:
      2 or 3.
    • equals

      public boolean equals(Object o)
      Specified by:
      equals in class Orientation
    • canEqual

      protected boolean canEqual(Object other)
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in class Orientation
    • getRotationMatrix

      public RotationMatrix getRotationMatrix()
      The rotation-matrix. Once used here, it must be treated as immutable, and its state may not be changed elsewhere.
      Overrides:
      getRotationMatrix in class Orientation
      Returns:
      the rotation-matrix.