## Uses of Interface
com.io7m.jtensors.MatrixWritable3x3FType

- Packages that use MatrixWritable3x3FType
  Package | Description
  --- | ---
  com.io7m.jtensors | Core vector and matrix types.
  com.io7m.jtensors.bytebuffered | `ByteBuffer` backed tensors.
  com.io7m.jtensors.bytebuffered.parameterized | `ByteBuffer` backed parameterized tensors.
  com.io7m.jtensors.parameterized | Parameterized vector and matrix types.

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

    Subinterfaces of MatrixWritable3x3FType in com.io7m.jtensors
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `Matrix3x3FType` The type of 3x3 matrices with `float` elements.
    `interface` | `Matrix4x4FType` The type of 4x4 matrices with `float` elements.
    `interface` | `MatrixDirect3x3FType` The type of 3x3 matrices with `float` elements that are backed by direct byte buffers.
    `interface` | `MatrixDirect4x4FType` The type of 4x4 matrices with `float` elements that are backed by direct byte buffers.
    `interface` | `MatrixWritable4x4FType` 'Write' interface to 4x4 matrices with `float` elements.

    Classes in com.io7m.jtensors that implement MatrixWritable3x3FType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `MatrixDirectM3x3F` The default implementation of the `MatrixDirect3x3FType` interface.
    `class` | `MatrixDirectM4x4F` The default implementation of the `MatrixDirect4x4FType` interface.
    `class` | `MatrixHeapArrayM3x3F` The default implementation of the `Matrix3x3FType` interface.
    `class` | `MatrixHeapArrayM4x4F` The default implementation of the `Matrix4x4FType` interface.

    Methods in com.io7m.jtensors with type parameters of type MatrixWritable3x3FType
    Modifier and Type | Method and Description
    --- | ---
    `static <M extends MatrixWritable3x3FType> M` | MatrixM3x3F.`add(MatrixReadable3x3FType m0, MatrixReadable3x3FType m1, M out)` Elementwise add of matrices `m0` and `m1`.
    `static <M extends MatrixWritable3x3FType & MatrixReadable3x3FType> M` | MatrixM3x3F.`addInPlace(M m0, MatrixReadable3x3FType m1)` Elementwise add of matrices `m0` and `m1`, returning the result in `m0`.
    `static <M extends MatrixWritable3x3FType> M` | MatrixM3x3F.`addRowScaled(MatrixM3x3F.ContextMM3F c, MatrixReadable3x3FType m, int row_a, int row_b, int row_c, double r, M 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 <M extends MatrixWritable3x3FType & MatrixReadable3x3FType> M` | MatrixM3x3F.`addRowScaledInPlace(MatrixM3x3F.ContextMM3F c, M 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 <M extends MatrixWritable3x3FType> M` | MatrixM3x3F.`copy(MatrixReadable3x3FType input, M output)` Copy the contents of the matrix `input` to the matrix `output`, completely replacing all elements.
    `static <M extends MatrixWritable3x3FType> M` | MatrixM3x3F.`exchangeRows(MatrixM3x3F.ContextMM3F c, MatrixReadable3x3FType m, int row_a, int row_b, M out)` Exchange the row `row_a` and row `row_b` of the matrix `m`, saving the exchanged rows to `out` .
    `static <M extends MatrixWritable3x3FType & MatrixReadable3x3FType> M` | MatrixM3x3F.`exchangeRowsInPlace(MatrixM3x3F.ContextMM3F c, M 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 <M extends MatrixWritable3x3FType> boolean` | MatrixM3x3F.`invert(MatrixM3x3F.ContextMM3F c, MatrixReadable3x3FType m, M out)` Calculate the inverse of the matrix `m`, saving the resulting matrix to `out`.
    `static <M extends MatrixWritable3x3FType & MatrixReadable3x3FType> boolean` | MatrixM3x3F.`invertInPlace(MatrixM3x3F.ContextMM3F c, M m)` Calculate the inverse of the matrix `m`, saving the resulting matrix to `m`.
    `static <V extends VectorWritable3FType,M extends MatrixWritable3x3FType> void` | MatrixM3x3F.`lookAt(MatrixM3x3F.ContextMM3F context, VectorReadable3FType origin, VectorReadable3FType target, VectorReadable3FType up, M out_matrix, V out_translation)` Calculate a rotation and translation representing a "camera" looking from the point `origin` to the point `target`.
    `<M extends MatrixWritable3x3FType> void` | MatrixI3x3F.`makeMatrixM3x3F(M m)` Write the current matrix into the given mutable matrix.
    `static <M extends MatrixWritable3x3FType> M` | MatrixM3x3F.`makeRotation(double angle, VectorReadable3FType axis, M out)` Generate a matrix that represents a rotation of `angle` radians around the axis `axis` and save to `out`.
    `static <M extends MatrixWritable3x3FType> M` | QuaternionM4F.`makeRotationMatrix3x3(QuaternionReadable4FType q, M m)` Produce a rotation matrix from the quaternion `q`, saving the result to `m`.
    `static <M extends MatrixWritable3x3FType> M` | QuaternionI4F.`makeRotationMatrix3x3(QuaternionReadable4FType q, M m)` Produce a rotation matrix from the quaternion `q`, saving the result to `m`.
    `static <M extends MatrixWritable3x3FType> M` | MatrixM3x3F.`makeTranslation2F(VectorReadable2FType v, M out)` Create a translation matrix that represents a translation by the vector `v`, writing the resulting matrix to `out`.
    `static <M extends MatrixWritable3x3FType> M` | MatrixM3x3F.`makeTranslation2I(VectorReadable2IType v, M out)` Create a translation matrix that represents a translation by the vector `v`, writing the resulting matrix to `out`.
    `static <M extends MatrixWritable3x3FType> M` | MatrixM3x3F.`multiply(MatrixReadable3x3FType m0, MatrixReadable3x3FType m1, M out)` Multiply the matrix `m0` with the matrix `m1`, writing the result to `out`.
    `static <M extends MatrixWritable3x3FType & MatrixReadable3x3FType> M` | MatrixM3x3F.`multiplyInPlace(M m0, MatrixReadable3x3FType m1)` Multiply the matrix `m0` with the matrix `m1`, writing the result to `m0`.
    `static <M extends MatrixWritable3x3FType> M` | MatrixM3x3F.`scale(MatrixReadable3x3FType m, double r, M out)` Scale all elements of the matrix `m` by the scaling value `r`, saving the result in `out`.
    `static <M extends MatrixWritable3x3FType & MatrixReadable3x3FType> M` | MatrixM3x3F.`scaleInPlace(M m, double r)` Scale all elements of the matrix `m` by the scaling value `r`, saving the result in `m`.
    `static <M extends MatrixWritable3x3FType> M` | MatrixM3x3F.`scaleRow(MatrixM3x3F.ContextMM3F c, MatrixReadable3x3FType m, int row, double r, M out)` Scale row `r` of the matrix `m` by `r`, saving the result to row `r` of `out`.
    `static <M extends MatrixWritable3x3FType & MatrixReadable3x3FType> M` | MatrixM3x3F.`scaleRowInPlace(MatrixM3x3F.ContextMM3F c, M m, int row, double r)` Scale row `r` of the matrix `m` by `r`, saving the result to row `r` of `m`.
    `static <M extends MatrixWritable3x3FType> M` | MatrixM3x3F.`setIdentity(M m)` Set the given matrix `m` to the identity matrix.
    `static <M extends MatrixWritable3x3FType> M` | MatrixM3x3F.`setZero(M m)` Set the given matrix `m` to the zero matrix.
    `static <M extends MatrixWritable3x3FType> M` | MatrixM3x3F.`transpose(MatrixReadable3x3FType m, M out)` Transpose the given matrix `m`, writing the resulting matrix to `out`.
    `static <M extends MatrixWritable3x3FType & MatrixReadable3x3FType> M` | MatrixM3x3F.`transposeInPlace(M m)` Transpose the given matrix `m`, writing the resulting matrix to `m`.

  - ### Uses of MatrixWritable3x3FType in com.io7m.jtensors.bytebuffered

    Subinterfaces of MatrixWritable3x3FType in com.io7m.jtensors.bytebuffered
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `MatrixByteBuffered3x3FType` The type of `Matrix3x3FType` values that are also byte buffered.
    `interface` | `MatrixByteBuffered4x4FType` The type of `Matrix4x4FType` values that are also byte buffered.

    Classes in com.io7m.jtensors.bytebuffered that implement MatrixWritable3x3FType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `MatrixByteBufferedM3x3F` A 3x3 matrix type with `float` elements, packed into a `ByteBuffer`.
    `class` | `MatrixByteBufferedM4x4F` A 4x4 matrix type with `float` elements, packed into a `ByteBuffer`.

  - ### Uses of MatrixWritable3x3FType in com.io7m.jtensors.bytebuffered.parameterized

    Subinterfaces of MatrixWritable3x3FType in com.io7m.jtensors.bytebuffered.parameterized
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `PMatrixByteBuffered3x3FType<T0,T1>` The type of `PMatrix3x3FType` values that are also byte buffered.
    `interface` | `PMatrixByteBuffered4x4FType<T0,T1>` The type of `PMatrix4x4FType` values that are also byte buffered.

    Classes in com.io7m.jtensors.bytebuffered.parameterized that implement MatrixWritable3x3FType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `PMatrixByteBufferedM3x3F<T0,T1>` A 3x3 matrix type with `float` elements, packed into a `ByteBuffer`.
    `class` | `PMatrixByteBufferedM4x4F<T0,T1>` A 4x4 matrix type with `float` elements, packed into a `ByteBuffer`.

  - ### Uses of MatrixWritable3x3FType in com.io7m.jtensors.parameterized

    Subinterfaces of MatrixWritable3x3FType in com.io7m.jtensors.parameterized
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `PMatrix3x3FType<T0,T1>` The type of 3x3 matrices with `double` elements.
    `interface` | `PMatrix4x4FType<T0,T1>` The type of 4x4 matrices with `float` elements.
    `interface` | `PMatrixDirect3x3FType<T0,T1>` The type of 3x3 matrices with `float` elements that are backed by direct byte buffers.
    `interface` | `PMatrixDirect4x4FType<T0,T1>` The type of 4x4 matrices with `float` elements that are backed by direct byte buffers.
    `interface` | `PMatrixWritable3x3FType<T,U>` 'Write' interface to 3x3 matrices with `float` elements.
    `interface` | `PMatrixWritable4x4FType<T,U>` 'Write' interface to 4x4 matrices with `float` elements.

    Classes in com.io7m.jtensors.parameterized that implement MatrixWritable3x3FType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `PMatrixDirectM3x3F<T0,T1>` The default implementation of the `PMatrixDirect3x3FType` interface.
    `class` | `PMatrixDirectM4x4F<T0,T1>` The default implementation of the `PMatrixDirect4x4FType` interface.
    `class` | `PMatrixHeapArrayM3x3F<T0,T1>` The default implementation of the `PMatrix3x3FType` interface.
    `class` | `PMatrixHeapArrayM4x4F<T0,T1>` The default implementation of the `PMatrix4x4FType` interface.

    Methods in com.io7m.jtensors.parameterized with parameters of type MatrixWritable3x3FType
    Modifier and Type | Method and Description
    --- | ---
    `void` | PMatrixI3x3F.`makeMatrix3x3FUntyped(MatrixWritable3x3FType m)` Write the current matrix into the given mutable matrix.

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