Implement Matrix4x4::Matrix4x4 from float pointer
This commit is contained in:
@@ -46,6 +46,30 @@ namespace J3ML::LinearAlgebra {
|
||||
/// Constructs this float4x4 to represent the same transformation as the given float3x3.
|
||||
/** This function expands the last row and column of this matrix with the elements from the identity matrix. */
|
||||
Matrix4x4(const Matrix3x3&);
|
||||
explicit Matrix4x4(const float* data)
|
||||
{
|
||||
assert(data);
|
||||
At(0, 0) = data[0];
|
||||
At(0, 1) = data[1];
|
||||
At(0, 2) = data[2];
|
||||
At(0, 3) = data[3];
|
||||
|
||||
At(1, 0) = data[4];
|
||||
At(1, 1) = data[5];
|
||||
At(1, 2) = data[6];
|
||||
At(1, 3) = data[7];
|
||||
|
||||
At(2, 0) = data[8];
|
||||
At(2, 1) = data[9];
|
||||
At(2, 2) = data[10];
|
||||
At(2, 3) = data[11];
|
||||
|
||||
At(3, 0) = data[12];
|
||||
At(3, 1) = data[13];
|
||||
At(3, 2) = data[14];
|
||||
At(3, 3) = data[15];
|
||||
}
|
||||
|
||||
/// Constructs a new float4x4 by explicitly specifying all the matrix elements.
|
||||
/// The elements are specified in row-major format, i.e. the first row first followed by the second and third row.
|
||||
/// E.g. The element _10 denotes the scalar at second (index 1) row, first (index 0) column.
|
||||
|
Reference in New Issue
Block a user