# Matrix2f (LWJGL API)
Date: 2015-07-28

## org.lwjgl.util.vector
Class Matrix2f

    java.lang.Object
      org.lwjgl.util.vector.Matrix
          org.lwjgl.util.vector.Matrix2f

All Implemented Interfaces:
  java.io.Serializable

    public class Matrix2f

extends Matrix
implements java.io.Serializable

Holds a 2x2 matrix

Version:
  $Revision$ $Id$
Author:
  cix_foo <cix_foo@users.sourceforge.net>
See Also:
  Serialized Form

Field Summary
`float` `m00`
`float` `m01`
`float` `m10`
`float` `m11`

Constructor Summary
`Matrix2f()` Constructor for Matrix2f.
`Matrix2f(Matrix2f src)` Constructor

Method Summary
`static Matrix2f` `add(Matrix2f left, Matrix2f right, Matrix2f dest)` Add two matrices together and place the result in a third matrix.
`float` `determinant()`
`Matrix` `invert()` Invert this matrix
`static Matrix2f` `invert(Matrix2f src, Matrix2f dest)` Invert the source matrix and place the result in the destination matrix.
`Matrix` `load(java.nio.FloatBuffer buf)` Load from a float buffer.
`Matrix2f` `load(Matrix2f src)` Load from another matrix
`static Matrix2f` `load(Matrix2f src, Matrix2f dest)` Copy the source matrix to the destination matrix.
`Matrix` `loadTranspose(java.nio.FloatBuffer buf)` Load from a float buffer.
`static Matrix2f` `mul(Matrix2f left, Matrix2f right, Matrix2f dest)` Multiply the right matrix by the left and place the result in a third matrix.
`Matrix` `negate()` Negate this matrix
`Matrix2f` `negate(Matrix2f dest)` Negate this matrix and stash the result in another matrix.
`static Matrix2f` `negate(Matrix2f src, Matrix2f dest)` Negate the source matrix and stash the result in the destination matrix.
`Matrix` `setIdentity()` Set this matrix to be the identity matrix.
`static Matrix2f` `setIdentity(Matrix2f src)` Set the source matrix to be the identity matrix.
`Matrix` `setZero()` Set this matrix to 0.
`static Matrix2f` `setZero(Matrix2f src)`
`Matrix` `store(java.nio.FloatBuffer buf)` Store this matrix in a float buffer.
`Matrix` `storeTranspose(java.nio.FloatBuffer buf)` Store this matrix in a float buffer.
`static Matrix2f` `sub(Matrix2f left, Matrix2f right, Matrix2f dest)` Subtract the right matrix from the left and place the result in a third matrix.
`java.lang.String` `toString()` Returns a string representation of this matrix
`static Vector2f` `transform(Matrix2f left, Vector2f right, Vector2f dest)` Transform a Vector by a matrix and return the result in a destination vector.
`Matrix` `transpose()` Transpose this matrix
`Matrix2f` `transpose(Matrix2f dest)` Transpose this matrix and place the result in another matrix.
`static Matrix2f` `transpose(Matrix2f src, Matrix2f dest)` Transpose the source matrix and place the result in the destination matrix.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

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(java.nio.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(java.nio.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(java.nio.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(java.nio.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

### setZero

    public static Matrix2f setZero(Matrix2f src)

### determinant

    public float determinant()

  Specified by:
    `determinant` in class `Matrix`
  Returns:
    the determinant of the matrix

Copyright © 2002-2009 lwjgl.org. All Rights Reserved.