Class PMatrix3x3F<A,​B>

java.lang.Object
com.io7m.jtensors.core.parameterized.matrices.PMatrix3x3F<A,​B>
Type Parameters:
A - A phantom type parameter (possibly representing a source coordinate system)
B - A phantom type parameter (possibly representing a target coordinate system)
All Implemented Interfaces:
MatrixComputationalType, PMatrix3x3FType<A,​B>, PMatrixReadable3x3FType<A,​B>, MatrixReadable3x3FType, MatrixReadableFType

public final class PMatrix3x3F<A,​B>
extends java.lang.Object
implements PMatrix3x3FType<A,​B>
The type of 3x3 float-typed matrices.
  • Nested Class Summary

    Nested Classes 
    Modifier and Type Class Description
    static class  PMatrix3x3F.Builder<A,​B>
    Builds instances of type PMatrix3x3F.
  • Method Summary

    Modifier and Type Method Description
    static <A,​ B> PMatrix3x3F.Builder<A,​B> builder()
    Creates a builder for PMatrix3x3F.
    static <A,​ B> PMatrix3x3F<A,​B> copyOf​(PMatrix3x3FType<A,​B> instance)
    Creates an immutable copy of a PMatrix3x3FType value.
    boolean equals​(java.lang.Object another)
    This instance is equal to all instances of PMatrix3x3F that have equal attribute values.
    int hashCode()
    Computes a hash code from attributes: r0c0, r0c1, r0c2, r1c0, r1c1, r1c2, r2c0, r2c1, r2c2.
    static <A,​ B> PMatrix3x3F<A,​B> of​(float r0c0, float r0c1, float r0c2, float r1c0, float r1c1, float r1c2, float r2c0, float r2c1, float r2c2)
    Construct a new immutable PMatrix3x3F instance.
    float r0c0()  
    float r0c1()  
    float r0c2()  
    float r1c0()  
    float r1c1()  
    float r1c2()  
    float r2c0()  
    float r2c1()  
    float r2c2()  
    java.lang.String toString()
    Prints the immutable value PMatrix3x3F with attribute values.
    PMatrix3x3F<A,​B> withR0c0​(float value)
    Copy the current immutable object by setting a value for the r0c0 attribute.
    PMatrix3x3F<A,​B> withR0c1​(float value)
    Copy the current immutable object by setting a value for the r0c1 attribute.
    PMatrix3x3F<A,​B> withR0c2​(float value)
    Copy the current immutable object by setting a value for the r0c2 attribute.
    PMatrix3x3F<A,​B> withR1c0​(float value)
    Copy the current immutable object by setting a value for the r1c0 attribute.
    PMatrix3x3F<A,​B> withR1c1​(float value)
    Copy the current immutable object by setting a value for the r1c1 attribute.
    PMatrix3x3F<A,​B> withR1c2​(float value)
    Copy the current immutable object by setting a value for the r1c2 attribute.
    PMatrix3x3F<A,​B> withR2c0​(float value)
    Copy the current immutable object by setting a value for the r2c0 attribute.
    PMatrix3x3F<A,​B> withR2c1​(float value)
    Copy the current immutable object by setting a value for the r2c1 attribute.
    PMatrix3x3F<A,​B> withR2c2​(float value)
    Copy the current immutable object by setting a value for the r2c2 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.MatrixReadable3x3FType

    rowColumn
  • Method Details

    • r0c0

      public float r0c0()
      Specified by:
      r0c0 in interface MatrixReadable3x3FType
      Specified by:
      r0c0 in interface PMatrix3x3FType<A,​B>
      Returns:
      The value at row 0 column 0
    • r0c1

      public float r0c1()
      Specified by:
      r0c1 in interface MatrixReadable3x3FType
      Specified by:
      r0c1 in interface PMatrix3x3FType<A,​B>
      Returns:
      The value at row 0 column 1
    • r0c2

      public float r0c2()
      Specified by:
      r0c2 in interface MatrixReadable3x3FType
      Specified by:
      r0c2 in interface PMatrix3x3FType<A,​B>
      Returns:
      The value at row 0 column 2
    • r1c0

      public float r1c0()
      Specified by:
      r1c0 in interface MatrixReadable3x3FType
      Specified by:
      r1c0 in interface PMatrix3x3FType<A,​B>
      Returns:
      The value at row 1 column 0
    • r1c1

      public float r1c1()
      Specified by:
      r1c1 in interface MatrixReadable3x3FType
      Specified by:
      r1c1 in interface PMatrix3x3FType<A,​B>
      Returns:
      The value at row 1 column 1
    • r1c2

      public float r1c2()
      Specified by:
      r1c2 in interface MatrixReadable3x3FType
      Specified by:
      r1c2 in interface PMatrix3x3FType<A,​B>
      Returns:
      The value at row 1 column 2
    • r2c0

      public float r2c0()
      Specified by:
      r2c0 in interface MatrixReadable3x3FType
      Specified by:
      r2c0 in interface PMatrix3x3FType<A,​B>
      Returns:
      The value at row 2 column 0
    • r2c1

      public float r2c1()
      Specified by:
      r2c1 in interface MatrixReadable3x3FType
      Specified by:
      r2c1 in interface PMatrix3x3FType<A,​B>
      Returns:
      The value at row 2 column 1
    • r2c2

      public float r2c2()
      Specified by:
      r2c2 in interface MatrixReadable3x3FType
      Specified by:
      r2c2 in interface PMatrix3x3FType<A,​B>
      Returns:
      The value at row 2 column 2
    • withR0c0

      public final PMatrix3x3F<A,​B> 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 PMatrix3x3F<A,​B> 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 PMatrix3x3F<A,​B> 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
    • withR1c0

      public final PMatrix3x3F<A,​B> 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 PMatrix3x3F<A,​B> 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 PMatrix3x3F<A,​B> 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
    • withR2c0

      public final PMatrix3x3F<A,​B> 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 PMatrix3x3F<A,​B> 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 PMatrix3x3F<A,​B> 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
    • equals

      public boolean equals​(java.lang.Object another)
      This instance is equal to all instances of PMatrix3x3F 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, r1c0, r1c1, r1c2, r2c0, r2c1, r2c2.
      Overrides:
      hashCode in class java.lang.Object
      Returns:
      hashCode value
    • toString

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

      public static <A,​ B> PMatrix3x3F<A,​B> of​(float r0c0, float r0c1, float r0c2, float r1c0, float r1c1, float r1c2, float r2c0, float r2c1, float r2c2)
      Construct a new immutable PMatrix3x3F instance.
      Type Parameters:
      A - generic parameter A
      B - generic parameter B
      Parameters:
      r0c0 - The value for the r0c0 attribute
      r0c1 - The value for the r0c1 attribute
      r0c2 - The value for the r0c2 attribute
      r1c0 - The value for the r1c0 attribute
      r1c1 - The value for the r1c1 attribute
      r1c2 - The value for the r1c2 attribute
      r2c0 - The value for the r2c0 attribute
      r2c1 - The value for the r2c1 attribute
      r2c2 - The value for the r2c2 attribute
      Returns:
      An immutable PMatrix3x3F instance
    • copyOf

      public static <A,​ B> PMatrix3x3F<A,​B> copyOf​(PMatrix3x3FType<A,​B> instance)
      Creates an immutable copy of a PMatrix3x3FType value. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.
      Type Parameters:
      A - generic parameter A
      B - generic parameter B
      Parameters:
      instance - The instance to copy
      Returns:
      A copied immutable PMatrix3x3F instance
    • builder

      public static <A,​ B> PMatrix3x3F.Builder<A,​B> builder()
      Creates a builder for PMatrix3x3F.
       PMatrix3x3F.&lt;A, B&gt;builder()
          .setR0c0(float) // required r0c0
          .setR0c1(float) // required r0c1
          .setR0c2(float) // required r0c2
          .setR1c0(float) // required r1c0
          .setR1c1(float) // required r1c1
          .setR1c2(float) // required r1c2
          .setR2c0(float) // required r2c0
          .setR2c1(float) // required r2c1
          .setR2c2(float) // required r2c2
          .build();
       
      Type Parameters:
      A - generic parameter A
      B - generic parameter B
      Returns:
      A new PMatrix3x3F builder