Class Matrix2f

  • All Implemented Interfaces:
    java.io.Serializable

    public class Matrix2f
    extends Matrix
    implements java.io.Serializable
    Holds a 2x2 matrix
    See Also:
    Serialized Form
    • Field Detail

      • m00

        public float m00
      • m01

        public float m01
      • m10

        public float m10
      • m11

        public float m11
    • Constructor Detail

      • Matrix2f

        public Matrix2f()
        Constructor for Matrix2f. The matrix is initialised to the identity.
      • Matrix2f

        public Matrix2f​(Matrix2f src)
        Constructor
    • Method Detail

      • load

        public Matrix2f load​(Matrix2f src)
        Load from another matrix
        Parameters:
        src - The source matrix
        Returns:
        this
      • load

        public static Matrix2f load​(Matrix2f src,
                                    Matrix2f dest)
        Copy the source matrix to the destination matrix.
        Parameters:
        src - The source matrix
        dest - The destination matrix, or null if a new one should be created.
        Returns:
        The copied matrix
      • load

        public Matrix load​(FloatBuffer buf)
        Load from a float buffer. The buffer stores the matrix in column major (OpenGL) order.
        Specified by:
        load in class Matrix
        Parameters:
        buf - A float buffer to read from
        Returns:
        this
      • loadTranspose

        public Matrix loadTranspose​(FloatBuffer buf)
        Load from a float buffer. The buffer stores the matrix in row major (mathematical) order.
        Specified by:
        loadTranspose in class Matrix
        Parameters:
        buf - A float buffer to read from
        Returns:
        this
      • store

        public Matrix store​(FloatBuffer buf)
        Store this matrix in a float buffer. The matrix is stored in column major (openGL) order.
        Specified by:
        store in class Matrix
        Parameters:
        buf - The buffer to store this matrix in
        Returns:
        this
      • storeTranspose

        public Matrix storeTranspose​(FloatBuffer buf)
        Store this matrix in a float buffer. The matrix is stored in row major (maths) order.
        Specified by:
        storeTranspose in class Matrix
        Parameters:
        buf - The buffer to store this matrix in
        Returns:
        this
      • add

        public static Matrix2f add​(Matrix2f left,
                                   Matrix2f right,
                                   Matrix2f dest)
        Add two matrices together and place the result in a third matrix.
        Parameters:
        left - The left source matrix
        right - The right source matrix
        dest - The destination matrix, or null if a new one is to be created
        Returns:
        the destination matrix
      • sub

        public static Matrix2f sub​(Matrix2f left,
                                   Matrix2f right,
                                   Matrix2f dest)
        Subtract the right matrix from the left and place the result in a third matrix.
        Parameters:
        left - The left source matrix
        right - The right source matrix
        dest - The destination matrix, or null if a new one is to be created
        Returns:
        the destination matrix
      • mul

        public static Matrix2f mul​(Matrix2f left,
                                   Matrix2f right,
                                   Matrix2f dest)
        Multiply the right matrix by the left and place the result in a third matrix.
        Parameters:
        left - The left source matrix
        right - The right source matrix
        dest - The destination matrix, or null if a new one is to be created
        Returns:
        the destination matrix
      • transform

        public static Vector2f transform​(Matrix2f left,
                                         Vector2f right,
                                         Vector2f dest)
        Transform a Vector by a matrix and return the result in a destination vector.
        Parameters:
        left - The left matrix
        right - The right vector
        dest - The destination vector, or null if a new one is to be created
        Returns:
        the destination vector
      • transpose

        public Matrix transpose()
        Transpose this matrix
        Specified by:
        transpose in class Matrix
        Returns:
        this
      • transpose

        public Matrix2f transpose​(Matrix2f dest)
        Transpose this matrix and place the result in another matrix.
        Parameters:
        dest - The destination matrix or null if a new matrix is to be created
        Returns:
        the transposed matrix
      • transpose

        public static Matrix2f transpose​(Matrix2f src,
                                         Matrix2f dest)
        Transpose the source matrix and place the result in the destination matrix.
        Parameters:
        src - The source matrix or null if a new matrix is to be created
        dest - The destination matrix or null if a new matrix is to be created
        Returns:
        the transposed matrix
      • invert

        public Matrix invert()
        Invert this matrix
        Specified by:
        invert in class Matrix
        Returns:
        this if successful, null otherwise
      • invert

        public static Matrix2f invert​(Matrix2f src,
                                      Matrix2f dest)
        Invert the source matrix and place the result in the destination matrix.
        Parameters:
        src - The source matrix to be inverted
        dest - The destination matrix or null if a new matrix is to be created
        Returns:
        The inverted matrix, or null if source can't be reverted.
      • toString

        public java.lang.String toString()
        Returns a string representation of this matrix
        Overrides:
        toString in class java.lang.Object
      • negate

        public Matrix negate()
        Negate this matrix
        Specified by:
        negate in class Matrix
        Returns:
        this
      • negate

        public Matrix2f negate​(Matrix2f dest)
        Negate this matrix and stash the result in another matrix.
        Parameters:
        dest - The destination matrix, or null if a new matrix is to be created
        Returns:
        the negated matrix
      • negate

        public static Matrix2f negate​(Matrix2f src,
                                      Matrix2f dest)
        Negate the source matrix and stash the result in the destination matrix.
        Parameters:
        src - The source matrix to be negated
        dest - The destination matrix, or null if a new matrix is to be created
        Returns:
        the negated matrix
      • setIdentity

        public Matrix setIdentity()
        Set this matrix to be the identity matrix.
        Specified by:
        setIdentity in class Matrix
        Returns:
        this
      • setIdentity

        public static Matrix2f setIdentity​(Matrix2f src)
        Set the source matrix to be the identity matrix.
        Parameters:
        src - The matrix to set to the identity.
        Returns:
        The source matrix
      • setZero

        public Matrix setZero()
        Set this matrix to 0.
        Specified by:
        setZero in class Matrix
        Returns:
        this
      • determinant

        public float determinant()
        Specified by:
        determinant in class Matrix
        Returns:
        the determinant of the matrix