com.io7m.r2.meshes

## Class R2MeshTangentsVertex

- java.lang.Object
- - com.io7m.r2.meshes.R2MeshTangentsVertex

- All Implemented Interfaces:
    R2MeshTangentsVertexType

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

  The type of basic mesh vertices.

- - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `long` | `bitangentIndex()`
    `static R2MeshTangentsVertex` | `copyOf(R2MeshTangentsVertexType instance)` Creates an immutable copy of a `R2MeshTangentsVertexType` value.
    `boolean` | `equals(Object another)` This instance is equal to all instances of `R2MeshTangentsVertex` that have equal attribute values.
    `int` | `hashCode()` Returns a precomputed-on-construction hash code from attributes: `positionIndex`, `normalIndex`, `tangentIndex`, `bitangentIndex`, `uvIndex`.
    `long` | `normalIndex()`
    `static R2MeshTangentsVertex` | `of(long positionIndex, long normalIndex, long tangentIndex, long bitangentIndex, long uvIndex)` Construct a new immutable `R2MeshTangentsVertex` instance.
    `long` | `positionIndex()`
    `long` | `tangentIndex()`
    `String` | `toString()` Prints the immutable value `R2MeshTangentsVertex` with attribute values.
    `long` | `uvIndex()`
    `R2MeshTangentsVertex` | `withBitangentIndex(long value)` Copy the current immutable object by setting a value for the `bitangentIndex` attribute.
    `R2MeshTangentsVertex` | `withNormalIndex(long value)` Copy the current immutable object by setting a value for the `normalIndex` attribute.
    `R2MeshTangentsVertex` | `withPositionIndex(long value)` Copy the current immutable object by setting a value for the `positionIndex` attribute.
    `R2MeshTangentsVertex` | `withTangentIndex(long value)` Copy the current immutable object by setting a value for the `tangentIndex` attribute.
    `R2MeshTangentsVertex` | `withUvIndex(long value)` Copy the current immutable object by setting a value for the `uvIndex` attribute.

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

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

- - ### Method Detail

    - #### positionIndex

          public long positionIndex()

      Specified by:
        `positionIndex` in interface `R2MeshTangentsVertexType`
      Returns:
        The index of the position attribute

    - #### normalIndex

          public long normalIndex()

      Specified by:
        `normalIndex` in interface `R2MeshTangentsVertexType`
      Returns:
        The index of the normal attribute

    - #### tangentIndex

          public long tangentIndex()

      Specified by:
        `tangentIndex` in interface `R2MeshTangentsVertexType`
      Returns:
        The index of the tangent attribute

    - #### bitangentIndex

          public long bitangentIndex()

      Specified by:
        `bitangentIndex` in interface `R2MeshTangentsVertexType`
      Returns:
        The index of the bitangent attribute

    - #### uvIndex

          public long uvIndex()

      Specified by:
        `uvIndex` in interface `R2MeshTangentsVertexType`
      Returns:
        The index of the UV attribute

    - #### withPositionIndex

          public final R2MeshTangentsVertex withPositionIndex(long value)

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

    - #### withNormalIndex

          public final R2MeshTangentsVertex withNormalIndex(long value)

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

    - #### withTangentIndex

          public final R2MeshTangentsVertex withTangentIndex(long value)

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

    - #### withBitangentIndex

          public final R2MeshTangentsVertex withBitangentIndex(long value)

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

    - #### withUvIndex

          public final R2MeshTangentsVertex withUvIndex(long value)

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

    - #### equals

          public boolean equals(Object another)

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

    - #### hashCode

          public int hashCode()

      Returns a precomputed-on-construction hash code from attributes: `positionIndex`, `normalIndex`, `tangentIndex`, `bitangentIndex`, `uvIndex`.
      Overrides:
        `hashCode` in class `Object`
      Returns:
        hashCode value

    - #### toString

          public String toString()

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

    - #### of

          public static R2MeshTangentsVertex of(long positionIndex,
                                                long normalIndex,
                                                long tangentIndex,
                                                long bitangentIndex,
                                                long uvIndex)

      Construct a new immutable `R2MeshTangentsVertex` instance.
      Parameters:
        `positionIndex` - The value for the `positionIndex` attribute
        `normalIndex` - The value for the `normalIndex` attribute
        `tangentIndex` - The value for the `tangentIndex` attribute
        `bitangentIndex` - The value for the `bitangentIndex` attribute
        `uvIndex` - The value for the `uvIndex` attribute
      Returns:
        An immutable R2MeshTangentsVertex instance

    - #### copyOf

          public static R2MeshTangentsVertex copyOf(R2MeshTangentsVertexType instance)

      Creates an immutable copy of a `R2MeshTangentsVertexType` 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 R2MeshTangentsVertex instance

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