XSIMath.CreateMatrix4

Description

Returns a SIMatrix4 object, the values of this matrix4 can be set at creation time from an array (1d or 2d) or by 16 values.

| m0 m1 m2 m3 |

| m4 m5 m6 m7 |

| m8 m9 m10 m11 |

| m12 m13 m14 m15 |

Scripting Syntax

oReturn = XSIMath.CreateMatrix4( [m0], [m1], [m2], [m3], [m4], [m5], [m6], [m7], [m8], [m9], [m10], [m11], [m12], [m13], [m14], [m15] );

Return Value

SIMatrix4

Parameters

Parameter Type Description
m0 Double or Array The m0 value or an array (1d or 2d) containing the 16 values.
m1 Double The m1 value.
m2 Double The m2 value.
m3 Double The m3 value.
m4 Double The m4 value.
m5 Double The m5 value.
m6 Double The m6 value.
m7 Double The m7 value.
m8 Double The m8 value.
m9 Double The m9 value.
m10 Double The m10 value.
m11 Double The m11 value.
m12 Double The m12 value.
m13 Double The m13 value.
m14 Double The m14 value.
m15 Double The m15 value.

Examples

1. JScript Example

/* Set and display the values of a matrix4
*/
var arrayInit = new Array (16)
arrayInit[0]  = 1.1;
arrayInit[1]  = 2.31;
arrayInit[2]  = 3.7;
arrayInit[3]  = 4;
arrayInit[4]  = 1.2;
arrayInit[5]  = 2.28;
arrayInit[6]  = 5.3;
arrayInit[7]  = 2;
arrayInit[8]  = 1.2;
arrayInit[9]  = 2.88;
arrayInit[10] = 3.4;
arrayInit[11] = 9;
arrayInit[12] = 1.9;
arrayInit[13] = 2.89;
arrayInit[14] = 3.5;
arrayInit[15] = 5;
var oMat4 = XSIMath.CreateMatrix4 (arrayInit);
vbArr = new VBArray( oMat4.Get2() );
array = vbArr.toArray();
//Display Matrix
var lineSize = 4;
Application.LogMessage( "The 16 matrix values" );
var mgsString = "";
for (i =0; i < lineSize; i++ )
{
for (j = 0; j < lineSize; j++ )
mgsString += "m" + i + "" + j + " " + array[ i*lineSize + j ] + "  ";
Application.LogMessage ( mgsString );
mgsString = "";
}               
//Expected output:
//INFO : The 16 matrix values
//INFO : m00 1.1  m01 2.31  m02 3.7  m03 4  
//INFO : m10 1.2  m11 2.28  m12 5.3  m13 2  
//INFO : m20 1.2  m21 2.88  m22 3.4  m23 9  
//INFO : m30 1.9  m31 2.89  m32 3.5  m33 5

2. VBScript Example

set oMatrix4 = XSIMath.CreateMatrix4
Application.LogMessage TypeName(oMatrix4)