Share via


Matrix.MultiplyMM(Single[], Int32, Single[], Int32, Single[], Int32) Method

Definition

Multiplies two 4x4 matrices together and stores the result in a third 4x4 matrix.

[Android.Runtime.Register("multiplyMM", "([FI[FI[FI)V", "")]
public static void MultiplyMM (float[]? result, int resultOffset, float[]? lhs, int lhsOffset, float[]? rhs, int rhsOffset);
[<Android.Runtime.Register("multiplyMM", "([FI[FI[FI)V", "")>]
static member MultiplyMM : single[] * int * single[] * int * single[] * int -> unit

Parameters

result
Single[]

The float array that holds the result.

resultOffset
Int32

The offset into the result array where the result is stored.

lhs
Single[]

The float array that holds the left-hand-side matrix.

lhsOffset
Int32

The offset into the lhs array where the lhs is stored

rhs
Single[]

The float array that holds the right-hand-side matrix.

rhsOffset
Int32

The offset into the rhs array where the rhs is stored.

Attributes

Exceptions

if result, lhs, or rhs are null, or if resultOffset + 16 > result.length or lhsOffset + 16 > lhs.length or rhsOffset + 16 > rhs.length.

Remarks

Multiplies two 4x4 matrices together and stores the result in a third 4x4 matrix. In matrix notation: result = lhs x rhs. Due to the way matrix multiplication works, the result matrix will have the same effect as first multiplying by the rhs matrix, then multiplying by the lhs matrix. This is the opposite of what you might expect.

The same float array may be passed for result, lhs, and/or rhs. This operation is expected to do the correct thing if the result elements overlap with either of the lhs or rhs elements.

Java documentation for android.opengl.Matrix.multiplyMM(float[], int, float[], int, float[], int).

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Applies to