java.lang.Object
com.io7m.jtensors.core.unparameterized.matrices.Matrix4x4F
All Implemented Interfaces:
MatrixComputationalType, Matrix4x4FType, MatrixReadable4x4FType, MatrixReadableFType

public final class Matrix4x4F
extends java.lang.Object
implements Matrix4x4FType
The type of 4x4 float-typed matrices.
  • Nested Class Summary

    Nested Classes 
    Modifier and Type Class Description
    static class  Matrix4x4F.Builder
    Builds instances of type Matrix4x4F.
  • Method Summary

    Modifier and Type Method Description
    static Matrix4x4F.Builder builder()
    Creates a builder for Matrix4x4F.
    static Matrix4x4F copyOf​(Matrix4x4FType instance)
    Creates an immutable copy of a Matrix4x4FType value.
    boolean equals​(java.lang.Object another)
    This instance is equal to all instances of Matrix4x4F that have equal attribute values.
    int hashCode()
    Computes a hash code from attributes: r0c0, r0c1, r0c2, r0c3, r1c0, r1c1, r1c2, r1c3, r2c0, r2c1, r2c2, r2c3, r3c0, r3c1, r3c2, r3c3.
    static Matrix4x4F of​(float r0c0, float r0c1, float r0c2, float r0c3, float r1c0, float r1c1, float r1c2, float r1c3, float r2c0, float r2c1, float r2c2, float r2c3, float r3c0, float r3c1, float r3c2, float r3c3)
    Construct a new immutable Matrix4x4F instance.
    float r0c0()  
    float r0c1()  
    float r0c2()  
    float r0c3()  
    float r1c0()  
    float r1c1()  
    float r1c2()  
    float r1c3()  
    float r2c0()  
    float r2c1()  
    float r2c2()  
    float r2c3()  
    float r3c0()  
    float r3c1()  
    float r3c2()  
    float r3c3()  
    java.lang.String toString()
    Prints the immutable value Matrix4x4F with attribute values.
    Matrix4x4F withR0c0​(float value)
    Copy the current immutable object by setting a value for the r0c0 attribute.
    Matrix4x4F withR0c1​(float value)
    Copy the current immutable object by setting a value for the r0c1 attribute.
    Matrix4x4F withR0c2​(float value)
    Copy the current immutable object by setting a value for the r0c2 attribute.
    Matrix4x4F withR0c3​(float value)
    Copy the current immutable object by setting a value for the r0c3 attribute.
    Matrix4x4F withR1c0​(float value)
    Copy the current immutable object by setting a value for the r1c0 attribute.
    Matrix4x4F withR1c1​(float value)
    Copy the current immutable object by setting a value for the r1c1 attribute.
    Matrix4x4F withR1c2​(float value)
    Copy the current immutable object by setting a value for the r1c2 attribute.
    Matrix4x4F withR1c3​(float value)
    Copy the current immutable object by setting a value for the r1c3 attribute.
    Matrix4x4F withR2c0​(float value)
    Copy the current immutable object by setting a value for the r2c0 attribute.
    Matrix4x4F withR2c1​(float value)
    Copy the current immutable object by setting a value for the r2c1 attribute.
    Matrix4x4F withR2c2​(float value)
    Copy the current immutable object by setting a value for the r2c2 attribute.
    Matrix4x4F withR2c3​(float value)
    Copy the current immutable object by setting a value for the r2c3 attribute.
    Matrix4x4F withR3c0​(float value)
    Copy the current immutable object by setting a value for the r3c0 attribute.
    Matrix4x4F withR3c1​(float value)
    Copy the current immutable object by setting a value for the r3c1 attribute.
    Matrix4x4F withR3c2​(float value)
    Copy the current immutable object by setting a value for the r3c2 attribute.
    Matrix4x4F withR3c3​(float value)
    Copy the current immutable object by setting a value for the r3c3 attribute.

    Methods inherited from class java.lang.Object

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

    Methods inherited from interface com.io7m.jtensors.core.unparameterized.matrices.MatrixReadable4x4FType

    rowColumn
  • Method Details

    • r0c0

      public float r0c0()
      Specified by:
      r0c0 in interface Matrix4x4FType
      Specified by:
      r0c0 in interface MatrixReadable4x4FType
      Returns:
      The value at row 0 column 0
    • r0c1

      public float r0c1()
      Specified by:
      r0c1 in interface Matrix4x4FType
      Specified by:
      r0c1 in interface MatrixReadable4x4FType
      Returns:
      The value at row 0 column 1
    • r0c2

      public float r0c2()
      Specified by:
      r0c2 in interface Matrix4x4FType
      Specified by:
      r0c2 in interface MatrixReadable4x4FType
      Returns:
      The value at row 0 column 2
    • r0c3

      public float r0c3()
      Specified by:
      r0c3 in interface Matrix4x4FType
      Specified by:
      r0c3 in interface MatrixReadable4x4FType
      Returns:
      The value at row 0 column 3
    • r1c0

      public float r1c0()
      Specified by:
      r1c0 in interface Matrix4x4FType
      Specified by:
      r1c0 in interface MatrixReadable4x4FType
      Returns:
      The value at row 1 column 0
    • r1c1

      public float r1c1()
      Specified by:
      r1c1 in interface Matrix4x4FType
      Specified by:
      r1c1 in interface MatrixReadable4x4FType
      Returns:
      The value at row 1 column 1
    • r1c2

      public float r1c2()
      Specified by:
      r1c2 in interface Matrix4x4FType
      Specified by:
      r1c2 in interface MatrixReadable4x4FType
      Returns:
      The value at row 1 column 2
    • r1c3

      public float r1c3()
      Specified by:
      r1c3 in interface Matrix4x4FType
      Specified by:
      r1c3 in interface MatrixReadable4x4FType
      Returns:
      The value at row 1 column 3
    • r2c0

      public float r2c0()
      Specified by:
      r2c0 in interface Matrix4x4FType
      Specified by:
      r2c0 in interface MatrixReadable4x4FType
      Returns:
      The value at row 2 column 0
    • r2c1

      public float r2c1()
      Specified by:
      r2c1 in interface Matrix4x4FType
      Specified by:
      r2c1 in interface MatrixReadable4x4FType
      Returns:
      The value at row 2 column 1
    • r2c2

      public float r2c2()
      Specified by:
      r2c2 in interface Matrix4x4FType
      Specified by:
      r2c2 in interface MatrixReadable4x4FType
      Returns:
      The value at row 2 column 2
    • r2c3

      public float r2c3()
      Specified by:
      r2c3 in interface Matrix4x4FType
      Specified by:
      r2c3 in interface MatrixReadable4x4FType
      Returns:
      The value at row 2 column 3
    • r3c0

      public float r3c0()
      Specified by:
      r3c0 in interface Matrix4x4FType
      Specified by:
      r3c0 in interface MatrixReadable4x4FType
      Returns:
      The value at row 3 column 0
    • r3c1

      public float r3c1()
      Specified by:
      r3c1 in interface Matrix4x4FType
      Specified by:
      r3c1 in interface MatrixReadable4x4FType
      Returns:
      The value at row 3 column 1
    • r3c2

      public float r3c2()
      Specified by:
      r3c2 in interface Matrix4x4FType
      Specified by:
      r3c2 in interface MatrixReadable4x4FType
      Returns:
      The value at row 3 column 2
    • r3c3

      public float r3c3()
      Specified by:
      r3c3 in interface Matrix4x4FType
      Specified by:
      r3c3 in interface MatrixReadable4x4FType
      Returns:
      The value at row 3 column 3
    • withR0c0

      public final Matrix4x4F withR0c0​(float value)
      Copy the current immutable object by setting a value for the r0c0 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r0c0
      Returns:
      A modified copy of the this object
    • withR0c1

      public final Matrix4x4F withR0c1​(float value)
      Copy the current immutable object by setting a value for the r0c1 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r0c1
      Returns:
      A modified copy of the this object
    • withR0c2

      public final Matrix4x4F withR0c2​(float value)
      Copy the current immutable object by setting a value for the r0c2 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r0c2
      Returns:
      A modified copy of the this object
    • withR0c3

      public final Matrix4x4F withR0c3​(float value)
      Copy the current immutable object by setting a value for the r0c3 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r0c3
      Returns:
      A modified copy of the this object
    • withR1c0

      public final Matrix4x4F withR1c0​(float value)
      Copy the current immutable object by setting a value for the r1c0 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r1c0
      Returns:
      A modified copy of the this object
    • withR1c1

      public final Matrix4x4F withR1c1​(float value)
      Copy the current immutable object by setting a value for the r1c1 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r1c1
      Returns:
      A modified copy of the this object
    • withR1c2

      public final Matrix4x4F withR1c2​(float value)
      Copy the current immutable object by setting a value for the r1c2 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r1c2
      Returns:
      A modified copy of the this object
    • withR1c3

      public final Matrix4x4F withR1c3​(float value)
      Copy the current immutable object by setting a value for the r1c3 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r1c3
      Returns:
      A modified copy of the this object
    • withR2c0

      public final Matrix4x4F withR2c0​(float value)
      Copy the current immutable object by setting a value for the r2c0 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r2c0
      Returns:
      A modified copy of the this object
    • withR2c1

      public final Matrix4x4F withR2c1​(float value)
      Copy the current immutable object by setting a value for the r2c1 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r2c1
      Returns:
      A modified copy of the this object
    • withR2c2

      public final Matrix4x4F withR2c2​(float value)
      Copy the current immutable object by setting a value for the r2c2 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r2c2
      Returns:
      A modified copy of the this object
    • withR2c3

      public final Matrix4x4F withR2c3​(float value)
      Copy the current immutable object by setting a value for the r2c3 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r2c3
      Returns:
      A modified copy of the this object
    • withR3c0

      public final Matrix4x4F withR3c0​(float value)
      Copy the current immutable object by setting a value for the r3c0 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r3c0
      Returns:
      A modified copy of the this object
    • withR3c1

      public final Matrix4x4F withR3c1​(float value)
      Copy the current immutable object by setting a value for the r3c1 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r3c1
      Returns:
      A modified copy of the this object
    • withR3c2

      public final Matrix4x4F withR3c2​(float value)
      Copy the current immutable object by setting a value for the r3c2 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r3c2
      Returns:
      A modified copy of the this object
    • withR3c3

      public final Matrix4x4F withR3c3​(float value)
      Copy the current immutable object by setting a value for the r3c3 attribute. A value strict bits equality used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for r3c3
      Returns:
      A modified copy of the this object
    • equals

      public boolean equals​(java.lang.Object another)
      This instance is equal to all instances of Matrix4x4F that have equal attribute values.
      Overrides:
      equals in class java.lang.Object
      Returns:
      true if this is equal to another instance
    • hashCode

      public int hashCode()
      Computes a hash code from attributes: r0c0, r0c1, r0c2, r0c3, r1c0, r1c1, r1c2, r1c3, r2c0, r2c1, r2c2, r2c3, r3c0, r3c1, r3c2, r3c3.
      Overrides:
      hashCode in class java.lang.Object
      Returns:
      hashCode value
    • toString

      public java.lang.String toString()
      Prints the immutable value Matrix4x4F with attribute values.
      Overrides:
      toString in class java.lang.Object
      Returns:
      A string representation of the value
    • of

      public static Matrix4x4F of​(float r0c0, float r0c1, float r0c2, float r0c3, float r1c0, float r1c1, float r1c2, float r1c3, float r2c0, float r2c1, float r2c2, float r2c3, float r3c0, float r3c1, float r3c2, float r3c3)
      Construct a new immutable Matrix4x4F instance.
      Parameters:
      r0c0 - The value for the r0c0 attribute
      r0c1 - The value for the r0c1 attribute
      r0c2 - The value for the r0c2 attribute
      r0c3 - The value for the r0c3 attribute
      r1c0 - The value for the r1c0 attribute
      r1c1 - The value for the r1c1 attribute
      r1c2 - The value for the r1c2 attribute
      r1c3 - The value for the r1c3 attribute
      r2c0 - The value for the r2c0 attribute
      r2c1 - The value for the r2c1 attribute
      r2c2 - The value for the r2c2 attribute
      r2c3 - The value for the r2c3 attribute
      r3c0 - The value for the r3c0 attribute
      r3c1 - The value for the r3c1 attribute
      r3c2 - The value for the r3c2 attribute
      r3c3 - The value for the r3c3 attribute
      Returns:
      An immutable Matrix4x4F instance
    • copyOf

      public static Matrix4x4F copyOf​(Matrix4x4FType instance)
      Creates an immutable copy of a Matrix4x4FType 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 Matrix4x4F instance
    • builder

      public static Matrix4x4F.Builder builder()
      Creates a builder for Matrix4x4F.
       Matrix4x4F.builder()
          .setR0c0(float) // required r0c0
          .setR0c1(float) // required r0c1
          .setR0c2(float) // required r0c2
          .setR0c3(float) // required r0c3
          .setR1c0(float) // required r1c0
          .setR1c1(float) // required r1c1
          .setR1c2(float) // required r1c2
          .setR1c3(float) // required r1c3
          .setR2c0(float) // required r2c0
          .setR2c1(float) // required r2c1
          .setR2c2(float) // required r2c2
          .setR2c3(float) // required r2c3
          .setR3c0(float) // required r3c0
          .setR3c1(float) // required r3c1
          .setR3c2(float) // required r3c2
          .setR3c3(float) // required r3c3
          .build();
       
      Returns:
      A new Matrix4x4F builder