## Uses of Class
com.io7m.jtensors.core.quaternions.Quaternion4D

- Packages that use Quaternion4D
  Package | Description
  --- | ---
  com.io7m.jtensors.core.quaternions | Quaternion types.
  com.io7m.jtensors.generators | QuickCheck generators.

- - ### Uses of Quaternion4D in com.io7m.jtensors.core.quaternions

    Methods in com.io7m.jtensors.core.quaternions that return Quaternion4D
    Modifier and Type | Method and Description
    --- | ---
    `static Quaternion4D` | Quaternions4D.`add(Quaternion4D q0, Quaternion4D q1)` Add `q0` to `q1`.
    `Quaternion4D` | Quaternion4D.Builder.`build()` Builds a new `Quaternion4D`.
    `static Quaternion4D` | Quaternions4D.`conjugate(Quaternion4D q)` Calculate the conjugate of the input quaternion `q`.
    `static Quaternion4D` | Quaternions4D.`identity()` The identity quaternion.
    `static Quaternion4D` | Quaternions4D.`interpolateLinear(Quaternion4D q0, Quaternion4D q1, double alpha)` Linearly interpolate between `q0` and `q1` by the amount `alpha`, such that:
    `static Quaternion4D` | Quaternions4D.`interpolateSphericalLinear(Quaternion4D q0, Quaternion4D q1, double alpha)` Interpolate between `q0` and `q1`, using spherical linear interpolation, by the amount `alpha`, such that:
    `static Quaternion4D` | Quaternions4D.`multiply(Quaternion4D q0, Quaternion4D q1)` Multiply the quaternion `q0` by the quaternion `q1`.
    `static Quaternion4D` | Quaternions4D.`negate(Quaternion4D q)` Calculate the negation of the input quaternion `q`.
    `static Quaternion4D` | Quaternions4D.`normalize(Quaternion4D q0)` Normalize the quaternion `q0`.
    `static Quaternion4D` | Quaternion4D.`of(double x, double y, double z, double w)` Construct a new immutable `Quaternion4D` instance.
    `static Quaternion4D` | Quaternions4D.`ofAxisAngle(double axis_x, double axis_y, double axis_z, double r)` Calculate a quaternion that represents a rotation of `r` radians around the axis `(axis_x, axis_y, axis_z)`.
    `static Quaternion4D` | Quaternions4D.`ofMatrix4x4(Matrix4x4D m)` Calculate a quaternion that represents the rotation given by the matrix `m`.
    `static Quaternion4D` | Quaternions4D.`scale(Quaternion4D q0, double r)` Scale `q0` by `r`.
    `static Quaternion4D` | Quaternions4D.`subtract(Quaternion4D q0, Quaternion4D q1)` Add `q0` to `q1`.
    `static Quaternion4D` | Quaternions4D.`zero()` The zero quaternion.

    Methods in com.io7m.jtensors.core.quaternions with parameters of type Quaternion4D
    Modifier and Type | Method and Description
    --- | ---
    `static Quaternion4D` | Quaternions4D.`add(Quaternion4D q0, Quaternion4D q1)` Add `q0` to `q1`.
    `static Quaternion4D` | Quaternions4D.`conjugate(Quaternion4D q)` Calculate the conjugate of the input quaternion `q`.
    `static double` | Quaternions4D.`dotProduct(Quaternion4D q0, Quaternion4D q1)` Calculate the scalar product of the quaternions `q0` and `q1`.
    `static Quaternion4D` | Quaternions4D.`interpolateLinear(Quaternion4D q0, Quaternion4D q1, double alpha)` Linearly interpolate between `q0` and `q1` by the amount `alpha`, such that:
    `static Quaternion4D` | Quaternions4D.`interpolateSphericalLinear(Quaternion4D q0, Quaternion4D q1, double alpha)` Interpolate between `q0` and `q1`, using spherical linear interpolation, by the amount `alpha`, such that:
    `static boolean` | Quaternions4D.`isNegationOf(Quaternions4D.ComponentComparatorType c, Quaternion4D qa, Quaternion4D qb)` Return `true` iff `qa` is the negation of `qb`.
    `static double` | Quaternions4D.`magnitude(Quaternion4D q0)` Calculate the magnitude of the quaternion `q0`.
    `static double` | Quaternions4D.`magnitudeSquared(Quaternion4D q0)` Calculate the squared magnitude of the quaternion `q0`.
    `static Quaternion4D` | Quaternions4D.`multiply(Quaternion4D q0, Quaternion4D q1)` Multiply the quaternion `q0` by the quaternion `q1`.
    `static Quaternion4D` | Quaternions4D.`negate(Quaternion4D q)` Calculate the negation of the input quaternion `q`.
    `static Quaternion4D` | Quaternions4D.`normalize(Quaternion4D q0)` Normalize the quaternion `q0`.
    `static Quaternion4D` | Quaternions4D.`scale(Quaternion4D q0, double r)` Scale `q0` by `r`.
    `static Quaternion4D` | Quaternions4D.`subtract(Quaternion4D q0, Quaternion4D q1)` Add `q0` to `q1`.
    `static Matrix4x4D` | Quaternions4D.`toMatrix4x4(Quaternion4D q)` Create a 4x4 matrix from the quaternion `q`.

  - ### Uses of Quaternion4D in com.io7m.jtensors.generators

    Methods in com.io7m.jtensors.generators that return Quaternion4D
    Modifier and Type | Method and Description
    --- | ---
    `Quaternion4D` | Quaternion4DGenerator.`next()`

    Methods in com.io7m.jtensors.generators that return types with arguments of type Quaternion4D
    Modifier and Type | Method and Description
    --- | ---
    `static <T> net.java.quickcheck.Generator<Quaternion4D>` | Quaternion4DGenerator.`create()` Create a generator initialized with a default component generator that produces values in the range `[-1.0, 1.0]`.

Copyright © 2017 <code@io7m.com> http://io7m.com