com.io7m.jcamera

## Class JCameraSphericalSnapshot

- java.lang.Object
- - com.io7m.jcamera.JCameraSphericalSnapshot

- All Implemented Interfaces:
    JCameraReadableSnapshotType, JCameraReadableType, JCameraSphericalReadableType, JCameraSphericalSnapshotType

      @Generated(value={"Immutables.generator","JCameraSphericalSnapshotType"})
      public final class JCameraSphericalSnapshot
      extends Object
      implements JCameraSphericalSnapshotType

  An immutable snapshot of a camera.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `JCameraSphericalSnapshot.Builder` Builds instances of type `JCameraSphericalSnapshot`.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static JCameraSphericalSnapshot.Builder` | `builder()` Creates a builder for `JCameraSphericalSnapshot`.
    `double` | `cameraGetAngleHeading()`
    `double` | `cameraGetAngleIncline()`
    `com.io7m.jtensors.core.unparameterized.vectors.Vector3D` | `cameraGetForward()`
    `com.io7m.jtensors.core.unparameterized.vectors.Vector3D` | `cameraGetForwardProjectedOnXZ()`
    `com.io7m.jtensors.core.unparameterized.vectors.Vector3D` | `cameraGetPosition()`
    `com.io7m.jtensors.core.unparameterized.vectors.Vector3D` | `cameraGetRight()`
    `com.io7m.jtensors.core.unparameterized.vectors.Vector3D` | `cameraGetTargetPosition()`
    `com.io7m.jtensors.core.unparameterized.vectors.Vector3D` | `cameraGetUp()`
    `double` | `cameraGetZoom()`
    `static JCameraSphericalSnapshot` | `copyOf(JCameraSphericalSnapshotType instance)` Creates an immutable copy of a `JCameraSphericalSnapshotType` value.
    `boolean` | `equals(Object another)` This instance is equal to all instances of `JCameraSphericalSnapshot` that have equal attribute values.
    `int` | `hashCode()` Computes a hash code from attributes: `cameraGetRight`, `cameraGetUp`, `cameraGetForward`, `cameraGetPosition`, `cameraGetAngleHeading`, `cameraGetAngleIncline`, `cameraGetZoom`, `cameraGetForwardProjectedOnXZ`, `cameraGetTargetPosition`.
    `static JCameraSphericalSnapshot` | `of(com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetRight, com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetUp, com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetForward, com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetPosition, double cameraGetAngleHeading, double cameraGetAngleIncline, double cameraGetZoom, com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetForwardProjectedOnXZ, com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetTargetPosition)` Construct a new immutable `JCameraSphericalSnapshot` instance.
    `String` | `toString()` Prints the immutable value `JCameraSphericalSnapshot` with attribute values.
    `JCameraSphericalSnapshot` | `withCameraGetAngleHeading(double value)` Copy the current immutable object by setting a value for the `cameraGetAngleHeading` attribute.
    `JCameraSphericalSnapshot` | `withCameraGetAngleIncline(double value)` Copy the current immutable object by setting a value for the `cameraGetAngleIncline` attribute.
    `JCameraSphericalSnapshot` | `withCameraGetForward(com.io7m.jtensors.core.unparameterized.vectors.Vector3D value)` Copy the current immutable object by setting a value for the `cameraGetForward` attribute.
    `JCameraSphericalSnapshot` | `withCameraGetForwardProjectedOnXZ(com.io7m.jtensors.core.unparameterized.vectors.Vector3D value)` Copy the current immutable object by setting a value for the `cameraGetForwardProjectedOnXZ` attribute.
    `JCameraSphericalSnapshot` | `withCameraGetPosition(com.io7m.jtensors.core.unparameterized.vectors.Vector3D value)` Copy the current immutable object by setting a value for the `cameraGetPosition` attribute.
    `JCameraSphericalSnapshot` | `withCameraGetRight(com.io7m.jtensors.core.unparameterized.vectors.Vector3D value)` Copy the current immutable object by setting a value for the `cameraGetRight` attribute.
    `JCameraSphericalSnapshot` | `withCameraGetTargetPosition(com.io7m.jtensors.core.unparameterized.vectors.Vector3D value)` Copy the current immutable object by setting a value for the `cameraGetTargetPosition` attribute.
    `JCameraSphericalSnapshot` | `withCameraGetUp(com.io7m.jtensors.core.unparameterized.vectors.Vector3D value)` Copy the current immutable object by setting a value for the `cameraGetUp` attribute.
    `JCameraSphericalSnapshot` | `withCameraGetZoom(double value)` Copy the current immutable object by setting a value for the `cameraGetZoom` attribute.

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

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

    - ### Methods inherited from interface com.io7m.jcamera.JCameraSphericalSnapshotType

      `cameraMakeViewMatrix, cameraMakeViewPMatrix`

- - ### Method Detail

    - #### cameraGetRight

          public com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetRight()

      Specified by:
        `cameraGetRight` in interface `JCameraSphericalReadableType`
      Specified by:
        `cameraGetRight` in interface `JCameraSphericalSnapshotType`
      Returns:
        The value of the `cameraGetRight` attribute

    - #### cameraGetUp

          public com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetUp()

      Specified by:
        `cameraGetUp` in interface `JCameraSphericalReadableType`
      Specified by:
        `cameraGetUp` in interface `JCameraSphericalSnapshotType`
      Returns:
        The value of the `cameraGetUp` attribute

    - #### cameraGetForward

          public com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetForward()

      Specified by:
        `cameraGetForward` in interface `JCameraSphericalReadableType`
      Specified by:
        `cameraGetForward` in interface `JCameraSphericalSnapshotType`
      Returns:
        The value of the `cameraGetForward` attribute

    - #### cameraGetPosition

          public com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetPosition()

      Specified by:
        `cameraGetPosition` in interface `JCameraSphericalReadableType`
      Specified by:
        `cameraGetPosition` in interface `JCameraSphericalSnapshotType`
      Returns:
        The value of the `cameraGetPosition` attribute

    - #### cameraGetAngleHeading

          public double cameraGetAngleHeading()

      Specified by:
        `cameraGetAngleHeading` in interface `JCameraSphericalReadableType`
      Specified by:
        `cameraGetAngleHeading` in interface `JCameraSphericalSnapshotType`
      Returns:
        The value of the `cameraGetAngleHeading` attribute

    - #### cameraGetAngleIncline

          public double cameraGetAngleIncline()

      Specified by:
        `cameraGetAngleIncline` in interface `JCameraSphericalReadableType`
      Specified by:
        `cameraGetAngleIncline` in interface `JCameraSphericalSnapshotType`
      Returns:
        The value of the `cameraGetAngleIncline` attribute

    - #### cameraGetZoom

          public double cameraGetZoom()

      Specified by:
        `cameraGetZoom` in interface `JCameraSphericalReadableType`
      Specified by:
        `cameraGetZoom` in interface `JCameraSphericalSnapshotType`
      Returns:
        The value of the `cameraGetZoom` attribute

    - #### cameraGetForwardProjectedOnXZ

          public com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetForwardProjectedOnXZ()

      Specified by:
        `cameraGetForwardProjectedOnXZ` in interface `JCameraSphericalReadableType`
      Specified by:
        `cameraGetForwardProjectedOnXZ` in interface `JCameraSphericalSnapshotType`
      Returns:
        The value of the `cameraGetForwardProjectedOnXZ` attribute

    - #### cameraGetTargetPosition

          public com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetTargetPosition()

      Specified by:
        `cameraGetTargetPosition` in interface `JCameraSphericalReadableType`
      Specified by:
        `cameraGetTargetPosition` in interface `JCameraSphericalSnapshotType`
      Returns:
        The value of the `cameraGetTargetPosition` attribute

    - #### withCameraGetRight

          public final JCameraSphericalSnapshot withCameraGetRight(com.io7m.jtensors.core.unparameterized.vectors.Vector3D value)

      Copy the current immutable object by setting a value for the `cameraGetRight` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for cameraGetRight
      Returns:
        A modified copy of the `this` object

    - #### withCameraGetUp

          public final JCameraSphericalSnapshot withCameraGetUp(com.io7m.jtensors.core.unparameterized.vectors.Vector3D value)

      Copy the current immutable object by setting a value for the `cameraGetUp` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for cameraGetUp
      Returns:
        A modified copy of the `this` object

    - #### withCameraGetForward

          public final JCameraSphericalSnapshot withCameraGetForward(com.io7m.jtensors.core.unparameterized.vectors.Vector3D value)

      Copy the current immutable object by setting a value for the `cameraGetForward` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for cameraGetForward
      Returns:
        A modified copy of the `this` object

    - #### withCameraGetPosition

          public final JCameraSphericalSnapshot withCameraGetPosition(com.io7m.jtensors.core.unparameterized.vectors.Vector3D value)

      Copy the current immutable object by setting a value for the `cameraGetPosition` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for cameraGetPosition
      Returns:
        A modified copy of the `this` object

    - #### withCameraGetAngleHeading

          public final JCameraSphericalSnapshot withCameraGetAngleHeading(double value)

      Copy the current immutable object by setting a value for the `cameraGetAngleHeading` attribute. A value strict bits equality used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for cameraGetAngleHeading
      Returns:
        A modified copy of the `this` object

    - #### withCameraGetAngleIncline

          public final JCameraSphericalSnapshot withCameraGetAngleIncline(double value)

      Copy the current immutable object by setting a value for the `cameraGetAngleIncline` attribute. A value strict bits equality used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for cameraGetAngleIncline
      Returns:
        A modified copy of the `this` object

    - #### withCameraGetZoom

          public final JCameraSphericalSnapshot withCameraGetZoom(double value)

      Copy the current immutable object by setting a value for the `cameraGetZoom` attribute. A value strict bits equality used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for cameraGetZoom
      Returns:
        A modified copy of the `this` object

    - #### withCameraGetForwardProjectedOnXZ

          public final JCameraSphericalSnapshot withCameraGetForwardProjectedOnXZ(com.io7m.jtensors.core.unparameterized.vectors.Vector3D value)

      Copy the current immutable object by setting a value for the `cameraGetForwardProjectedOnXZ` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for cameraGetForwardProjectedOnXZ
      Returns:
        A modified copy of the `this` object

    - #### withCameraGetTargetPosition

          public final JCameraSphericalSnapshot withCameraGetTargetPosition(com.io7m.jtensors.core.unparameterized.vectors.Vector3D value)

      Copy the current immutable object by setting a value for the `cameraGetTargetPosition` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for cameraGetTargetPosition
      Returns:
        A modified copy of the `this` object

    - #### equals

          public boolean equals(Object another)

      This instance is equal to all instances of `JCameraSphericalSnapshot` that have equal attribute values.
      Overrides:
        `equals` in class `Object`
      Returns:
        `true` if `this` is equal to `another` instance

    - #### hashCode

          public int hashCode()

      Computes a hash code from attributes: `cameraGetRight`, `cameraGetUp`, `cameraGetForward`, `cameraGetPosition`, `cameraGetAngleHeading`, `cameraGetAngleIncline`, `cameraGetZoom`, `cameraGetForwardProjectedOnXZ`, `cameraGetTargetPosition`.
      Overrides:
        `hashCode` in class `Object`
      Returns:
        hashCode value

    - #### toString

          public String toString()

      Prints the immutable value `JCameraSphericalSnapshot` with attribute values.
      Overrides:
        `toString` in class `Object`
      Returns:
        A string representation of the value

    - #### of

          public static JCameraSphericalSnapshot of(com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetRight,
                                                    com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetUp,
                                                    com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetForward,
                                                    com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetPosition,
                                                    double cameraGetAngleHeading,
                                                    double cameraGetAngleIncline,
                                                    double cameraGetZoom,
                                                    com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetForwardProjectedOnXZ,
                                                    com.io7m.jtensors.core.unparameterized.vectors.Vector3D cameraGetTargetPosition)

      Construct a new immutable `JCameraSphericalSnapshot` instance.
      Parameters:
        `cameraGetRight` - The value for the `cameraGetRight` attribute
        `cameraGetUp` - The value for the `cameraGetUp` attribute
        `cameraGetForward` - The value for the `cameraGetForward` attribute
        `cameraGetPosition` - The value for the `cameraGetPosition` attribute
        `cameraGetAngleHeading` - The value for the `cameraGetAngleHeading` attribute
        `cameraGetAngleIncline` - The value for the `cameraGetAngleIncline` attribute
        `cameraGetZoom` - The value for the `cameraGetZoom` attribute
        `cameraGetForwardProjectedOnXZ` - The value for the `cameraGetForwardProjectedOnXZ` attribute
        `cameraGetTargetPosition` - The value for the `cameraGetTargetPosition` attribute
      Returns:
        An immutable JCameraSphericalSnapshot instance

    - #### copyOf

          public static JCameraSphericalSnapshot copyOf(JCameraSphericalSnapshotType instance)

      Creates an immutable copy of a `JCameraSphericalSnapshotType` value. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.
      Parameters:
        `instance` - The instance to copy
      Returns:
        A copied immutable JCameraSphericalSnapshot instance

    - #### builder

          public static JCameraSphericalSnapshot.Builder builder()

      Creates a builder for `JCameraSphericalSnapshot`.
      Returns:
        A new JCameraSphericalSnapshot builder

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