org.apache.commons.math3.geometry.euclidean.threed

## Class RotationOrder

- java.lang.Object
- - org.apache.commons.math3.geometry.euclidean.threed.RotationOrder

-     public final class RotationOrder
      extends java.lang.Object

  This class is a utility representing a rotation order specification for Cardan or Euler angles specification. This class cannot be instanciated by the user. He can only use one of the twelve predefined supported orders as an argument to either the `Rotation.Rotation(RotationOrder,double,double,double)` constructor or the `Rotation.getAngles(org.apache.commons.math3.geometry.euclidean.threed.RotationOrder)` method.
  Since:
    1.2
  Version:
    $Id: RotationOrder.java 1416643 2012-12-03 19:37:14Z tn $

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `private Vector3D` | `a1` Axis of the first rotation.
    `private Vector3D` | `a2` Axis of the second rotation.
    `private Vector3D` | `a3` Axis of the third rotation.
    `private java.lang.String` | `name` Name of the rotations order.
    `static RotationOrder` | `XYX` Set of Euler angles.
    `static RotationOrder` | `XYZ` Set of Cardan angles.
    `static RotationOrder` | `XZX` Set of Euler angles.
    `static RotationOrder` | `XZY` Set of Cardan angles.
    `static RotationOrder` | `YXY` Set of Euler angles.
    `static RotationOrder` | `YXZ` Set of Cardan angles.
    `static RotationOrder` | `YZX` Set of Cardan angles.
    `static RotationOrder` | `YZY` Set of Euler angles.
    `static RotationOrder` | `ZXY` Set of Cardan angles.
    `static RotationOrder` | `ZXZ` Set of Euler angles.
    `static RotationOrder` | `ZYX` Set of Cardan angles.
    `static RotationOrder` | `ZYZ` Set of Euler angles.

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `private` | `RotationOrder(java.lang.String name, Vector3D a1, Vector3D a2, Vector3D a3)` Private constructor.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Vector3D` | `getA1()` Get the axis of the first rotation.
    `Vector3D` | `getA2()` Get the axis of the second rotation.
    `Vector3D` | `getA3()` Get the axis of the second rotation.
    `java.lang.String` | `toString()` Get a string representation of the instance.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### XYZ

          public static final RotationOrder XYZ

      Set of Cardan angles. this ordered set of rotations is around X, then around Y, then around Z

    - #### XZY

          public static final RotationOrder XZY

      Set of Cardan angles. this ordered set of rotations is around X, then around Z, then around Y

    - #### YXZ

          public static final RotationOrder YXZ

      Set of Cardan angles. this ordered set of rotations is around Y, then around X, then around Z

    - #### YZX

          public static final RotationOrder YZX

      Set of Cardan angles. this ordered set of rotations is around Y, then around Z, then around X

    - #### ZXY

          public static final RotationOrder ZXY

      Set of Cardan angles. this ordered set of rotations is around Z, then around X, then around Y

    - #### ZYX

          public static final RotationOrder ZYX

      Set of Cardan angles. this ordered set of rotations is around Z, then around Y, then around X

    - #### XYX

          public static final RotationOrder XYX

      Set of Euler angles. this ordered set of rotations is around X, then around Y, then around X

    - #### XZX

          public static final RotationOrder XZX

      Set of Euler angles. this ordered set of rotations is around X, then around Z, then around X

    - #### YXY

          public static final RotationOrder YXY

      Set of Euler angles. this ordered set of rotations is around Y, then around X, then around Y

    - #### YZY

          public static final RotationOrder YZY

      Set of Euler angles. this ordered set of rotations is around Y, then around Z, then around Y

    - #### ZXZ

          public static final RotationOrder ZXZ

      Set of Euler angles. this ordered set of rotations is around Z, then around X, then around Z

    - #### ZYZ

          public static final RotationOrder ZYZ

      Set of Euler angles. this ordered set of rotations is around Z, then around Y, then around Z

    - #### name

          private final java.lang.String name

      Name of the rotations order.

    - #### a1

          private final Vector3D a1

      Axis of the first rotation.

    - #### a2

          private final Vector3D a2

      Axis of the second rotation.

    - #### a3

          private final Vector3D a3

      Axis of the third rotation.

  - ### Constructor Detail

    - #### RotationOrder

          private RotationOrder(java.lang.String name,
                       Vector3D a1,
                       Vector3D a2,
                       Vector3D a3)

      Private constructor. This is a utility class that cannot be instantiated by the user, so its only constructor is private.
      Parameters:
        `name` - name of the rotation order
        `a1` - axis of the first rotation
        `a2` - axis of the second rotation
        `a3` - axis of the third rotation

  - ### Method Detail

    - #### toString

          public java.lang.String toString()

      Get a string representation of the instance.
      Overrides:
        `toString` in class `java.lang.Object`
      Returns:
        a string representation of the instance (in fact, its name)

    - #### getA1

          public Vector3D getA1()

      Get the axis of the first rotation.
      Returns:
        axis of the first rotation

    - #### getA2

          public Vector3D getA2()

      Get the axis of the second rotation.
      Returns:
        axis of the second rotation

    - #### getA3

          public Vector3D getA3()

      Get the axis of the second rotation.
      Returns:
        axis of the second rotation

Copyright (c) 2003-2013 Apache Software Foundation