## Uses of Class
com.io7m.jtensors.MatrixM3x3D

- Packages that use MatrixM3x3D
  Package | Description
  --- | ---
  com.io7m.jtensors |

- - ### Uses of MatrixM3x3D in com.io7m.jtensors

    Methods in com.io7m.jtensors that return MatrixM3x3D
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixM3x3D` | MatrixM3x3D.`add(MatrixReadable3x3DType m0, MatrixReadable3x3DType m1, MatrixM3x3D out)` Elementwise add of matrices `m0` and `m1`.
    `static MatrixM3x3D` | MatrixM3x3D.`addInPlace(MatrixM3x3D m0, MatrixM3x3D m1)` Elementwise add of matrices `m0` and `m1`, returning the result in `m0`.
    `static MatrixM3x3D` | MatrixM3x3D.`addRowScaled(MatrixReadable3x3DType m, int row_a, int row_b, int row_c, double r, MatrixM3x3D out)` Add the values in row `row_b` to the values in row `row_a` scaled by `r`, saving the resulting row in row `row_c` of the matrix `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`addRowScaledInPlace(MatrixM3x3D m, int row_a, int row_b, int row_c, double r)` Add the values in row `row_b` to the values in row `row_a` scaled by `r`, saving the resulting row in row `row_c` of the matrix `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`copy(MatrixReadable3x3DType input, MatrixM3x3D output)` Copy the contents of the matrix `input` to the matrix `output`, completely replacing all elements.
    `static MatrixM3x3D` | MatrixM3x3D.`exchangeRows(MatrixReadable3x3DType m, int row_a, int row_b, MatrixM3x3D out)` Exchange the row `row_a` and row `row_b` of the matrix `m`, saving the exchanged rows to `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`exchangeRowsInPlace(MatrixM3x3D m, int row_a, int row_b)` Exchange the row `row_a` and row `row_b` of the matrix `m`, saving the exchanged rows to `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`makeRotation(double angle, VectorReadable3DType axis)` Generate and return a matrix that represents a rotation of `angle` radians around the axis `axis`.
    `static MatrixM3x3D` | MatrixM3x3D.`makeRotation(double angle, VectorReadable3DType axis, MatrixM3x3D out)` Generate a matrix that represents a rotation of `angle` radians around the axis `axis` and save to `out`.
    `static MatrixM3x3D` | QuaternionM4D.`makeRotationMatrix3x3(QuaternionReadable4DType q, MatrixM3x3D m)` Produce a rotation matrix from the quaternion `q`, saving the result to `m`.
    `static MatrixM3x3D` | QuaternionI4D.`makeRotationMatrix3x3(QuaternionReadable4DType q, MatrixM3x3D m)` Produce a rotation matrix from the quaternion `q`, saving the result to `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`makeTranslation2D(VectorReadable2DType v, MatrixM3x3D out)` Create a translation matrix that represents a translation by the vector `v`, writing the resulting matrix to `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`makeTranslation2I(VectorReadable2IType v, MatrixM3x3D out)` Create a translation matrix that represents a translation by the vector `v`, writing the resulting matrix to `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`multiply(MatrixReadable3x3DType m0, MatrixReadable3x3DType m1, MatrixM3x3D out)` Multiply the matrix `m0` with the matrix `m1`, writing the result to `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`multiplyInPlace(MatrixM3x3D m0, MatrixReadable3x3DType m1)` Multiply the matrix `m0` with the matrix `m1`, writing the result to `m0`.
    `static MatrixM3x3D` | MatrixM3x3D.`rotate(double angle, MatrixReadable3x3DType m, VectorReadable3DType axis, MatrixM3x3D out)` Rotate the matrix `m` by `angle` radians around the axis `axis`, saving the result into `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`rotateInPlace(double angle, MatrixM3x3D m, VectorReadable3DType axis)` Rotate the matrix `m` by `angle` radians around the axis `axis`, saving the result into `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`rotateInPlaceWithContext(MatrixM3x3D.Context context, double angle, MatrixM3x3D m, VectorReadable3DType axis)` Rotate the matrix `m` by `angle` radians around the axis `axis`, saving the result into `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`rotateWithContext(MatrixM3x3D.Context context, double angle, MatrixReadable3x3DType m, VectorReadable3DType axis, MatrixM3x3D out)` Rotate the matrix `m` by `angle` radians around the axis `axis`, saving the result into `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`scale(MatrixReadable3x3DType m, double r, MatrixM3x3D out)` Scale all elements of the matrix `m` by the scaling value `r`, saving the result in `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`scaleInPlace(MatrixM3x3D m, double r)` Scale all elements of the matrix `m` by the scaling value `r`, saving the result in `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`scaleRow(MatrixReadable3x3DType m, int row, double r, MatrixM3x3D out)` Scale row `r` of the matrix `m` by `r`, saving the result to row `r` of `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`scaleRowInPlace(MatrixM3x3D m, int row, double r)` Scale row `r` of the matrix `m` by `r`, saving the result to row `r` of `m`.
    `MatrixM3x3D` | MatrixM3x3D.`set(int row, int column, double value)` Set the value at the given row and column.
    `static MatrixM3x3D` | MatrixM3x3D.`set(MatrixM3x3D m, int row, int column, double value)` Set the value in the matrix `m` at row `row`, column `column` to `value`.
    `static MatrixM3x3D` | MatrixM3x3D.`setIdentity(MatrixM3x3D m)` Set the given matrix `m` to the identity matrix.
    `static MatrixM3x3D` | MatrixM3x3D.`setZero(MatrixM3x3D m)` Set the given matrix `m` to the zero matrix.
    `static MatrixM3x3D` | MatrixM3x3D.`translateByVector2D(MatrixReadable3x3DType m, VectorReadable2DType v, MatrixM3x3D out)` Translate the matrix `m` by the vector `v`, storing the resulting matrix in `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`translateByVector2DInPlace(MatrixM3x3D m, VectorReadable2DType v)` Translate the matrix `m` by the vector `v`, storing the resulting matrix in `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`translateByVector2I(MatrixReadable3x3DType m, VectorReadable2IType v, MatrixM3x3D out)` Translate the matrix `m` by the vector `v`, storing the resulting matrix in `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`translateByVector2IInPlace(MatrixM3x3D m, VectorReadable2IType v)` Translate the matrix `m` by the vector `v`, storing the resulting matrix in `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`transpose(MatrixReadable3x3DType m, MatrixM3x3D out)` Transpose the given matrix `m`, writing the resulting matrix to `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`transposeInPlace(MatrixM3x3D m)` Transpose the given matrix `m`, writing the resulting matrix to `m`.

    Methods in com.io7m.jtensors that return types with arguments of type MatrixM3x3D
    Modifier and Type | Method and Description
    --- | ---
    `static com.io7m.jfunctional.OptionType<MatrixM3x3D>` | MatrixM3x3D.`invert(MatrixReadable3x3DType m, MatrixM3x3D out)` Calculate the inverse of the matrix `m`, saving the resulting matrix to `out`.
    `static com.io7m.jfunctional.OptionType<MatrixM3x3D>` | MatrixM3x3D.`invertInPlace(MatrixM3x3D m)` Calculate the inverse of the matrix `m`, saving the resulting matrix to `m`.

    Methods in com.io7m.jtensors with parameters of type MatrixM3x3D
    Modifier and Type | Method and Description
    --- | ---
    `static MatrixM3x3D` | MatrixM3x3D.`add(MatrixReadable3x3DType m0, MatrixReadable3x3DType m1, MatrixM3x3D out)` Elementwise add of matrices `m0` and `m1`.
    `static MatrixM3x3D` | MatrixM3x3D.`addInPlace(MatrixM3x3D m0, MatrixM3x3D m1)` Elementwise add of matrices `m0` and `m1`, returning the result in `m0`.
    `static MatrixM3x3D` | MatrixM3x3D.`addRowScaled(MatrixReadable3x3DType m, int row_a, int row_b, int row_c, double r, MatrixM3x3D out)` Add the values in row `row_b` to the values in row `row_a` scaled by `r`, saving the resulting row in row `row_c` of the matrix `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`addRowScaledInPlace(MatrixM3x3D m, int row_a, int row_b, int row_c, double r)` Add the values in row `row_b` to the values in row `row_a` scaled by `r`, saving the resulting row in row `row_c` of the matrix `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`copy(MatrixReadable3x3DType input, MatrixM3x3D output)` Copy the contents of the matrix `input` to the matrix `output`, completely replacing all elements.
    `static DoubleBuffer` | MatrixM3x3D.`doubleBuffer(MatrixM3x3D m)`
    `static MatrixM3x3D` | MatrixM3x3D.`exchangeRows(MatrixReadable3x3DType m, int row_a, int row_b, MatrixM3x3D out)` Exchange the row `row_a` and row `row_b` of the matrix `m`, saving the exchanged rows to `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`exchangeRowsInPlace(MatrixM3x3D m, int row_a, int row_b)` Exchange the row `row_a` and row `row_b` of the matrix `m`, saving the exchanged rows to `m`.
    `static com.io7m.jfunctional.OptionType<MatrixM3x3D>` | MatrixM3x3D.`invert(MatrixReadable3x3DType m, MatrixM3x3D out)` Calculate the inverse of the matrix `m`, saving the resulting matrix to `out`.
    `static com.io7m.jfunctional.OptionType<MatrixM3x3D>` | MatrixM3x3D.`invertInPlace(MatrixM3x3D m)` Calculate the inverse of the matrix `m`, saving the resulting matrix to `m`.
    `static void` | MatrixM3x3D.`lookAtWithContext(MatrixM3x3D.Context context, VectorReadable3DType origin, VectorReadable3DType target, VectorReadable3DType up, MatrixM3x3D out_matrix, VectorM3D out_translation)` Calculate a rotation and translation representing a "camera" looking from the point `origin` to the point `target`.
    `static MatrixM3x3D` | MatrixM3x3D.`makeRotation(double angle, VectorReadable3DType axis, MatrixM3x3D out)` Generate a matrix that represents a rotation of `angle` radians around the axis `axis` and save to `out`.
    `static MatrixM3x3D` | QuaternionM4D.`makeRotationMatrix3x3(QuaternionReadable4DType q, MatrixM3x3D m)` Produce a rotation matrix from the quaternion `q`, saving the result to `m`.
    `static MatrixM3x3D` | QuaternionI4D.`makeRotationMatrix3x3(QuaternionReadable4DType q, MatrixM3x3D m)` Produce a rotation matrix from the quaternion `q`, saving the result to `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`makeTranslation2D(VectorReadable2DType v, MatrixM3x3D out)` Create a translation matrix that represents a translation by the vector `v`, writing the resulting matrix to `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`makeTranslation2I(VectorReadable2IType v, MatrixM3x3D out)` Create a translation matrix that represents a translation by the vector `v`, writing the resulting matrix to `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`multiply(MatrixReadable3x3DType m0, MatrixReadable3x3DType m1, MatrixM3x3D out)` Multiply the matrix `m0` with the matrix `m1`, writing the result to `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`multiplyInPlace(MatrixM3x3D m0, MatrixReadable3x3DType m1)` Multiply the matrix `m0` with the matrix `m1`, writing the result to `m0`.
    `static MatrixM3x3D` | MatrixM3x3D.`rotate(double angle, MatrixReadable3x3DType m, VectorReadable3DType axis, MatrixM3x3D out)` Rotate the matrix `m` by `angle` radians around the axis `axis`, saving the result into `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`rotateInPlace(double angle, MatrixM3x3D m, VectorReadable3DType axis)` Rotate the matrix `m` by `angle` radians around the axis `axis`, saving the result into `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`rotateInPlaceWithContext(MatrixM3x3D.Context context, double angle, MatrixM3x3D m, VectorReadable3DType axis)` Rotate the matrix `m` by `angle` radians around the axis `axis`, saving the result into `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`rotateWithContext(MatrixM3x3D.Context context, double angle, MatrixReadable3x3DType m, VectorReadable3DType axis, MatrixM3x3D out)` Rotate the matrix `m` by `angle` radians around the axis `axis`, saving the result into `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`scale(MatrixReadable3x3DType m, double r, MatrixM3x3D out)` Scale all elements of the matrix `m` by the scaling value `r`, saving the result in `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`scaleInPlace(MatrixM3x3D m, double r)` Scale all elements of the matrix `m` by the scaling value `r`, saving the result in `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`scaleRow(MatrixReadable3x3DType m, int row, double r, MatrixM3x3D out)` Scale row `r` of the matrix `m` by `r`, saving the result to row `r` of `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`scaleRowInPlace(MatrixM3x3D m, int row, double r)` Scale row `r` of the matrix `m` by `r`, saving the result to row `r` of `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`set(MatrixM3x3D m, int row, int column, double value)` Set the value in the matrix `m` at row `row`, column `column` to `value`.
    `static MatrixM3x3D` | MatrixM3x3D.`setIdentity(MatrixM3x3D m)` Set the given matrix `m` to the identity matrix.
    `static MatrixM3x3D` | MatrixM3x3D.`setZero(MatrixM3x3D m)` Set the given matrix `m` to the zero matrix.
    `static MatrixM3x3D` | MatrixM3x3D.`translateByVector2D(MatrixReadable3x3DType m, VectorReadable2DType v, MatrixM3x3D out)` Translate the matrix `m` by the vector `v`, storing the resulting matrix in `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`translateByVector2DInPlace(MatrixM3x3D m, VectorReadable2DType v)` Translate the matrix `m` by the vector `v`, storing the resulting matrix in `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`translateByVector2I(MatrixReadable3x3DType m, VectorReadable2IType v, MatrixM3x3D out)` Translate the matrix `m` by the vector `v`, storing the resulting matrix in `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`translateByVector2IInPlace(MatrixM3x3D m, VectorReadable2IType v)` Translate the matrix `m` by the vector `v`, storing the resulting matrix in `m`.
    `static MatrixM3x3D` | MatrixM3x3D.`transpose(MatrixReadable3x3DType m, MatrixM3x3D out)` Transpose the given matrix `m`, writing the resulting matrix to `out`.
    `static MatrixM3x3D` | MatrixM3x3D.`transposeInPlace(MatrixM3x3D m)` Transpose the given matrix `m`, writing the resulting matrix to `m`.

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