Thursday, August 06, 2009

Flash 10: Matrix3D

rawData is set as column major order

hence, gotta transpose to row major

var v:Vector.<Number> = Vector.<Number>(
[1, 2, 3, 4,
5, 6, 7, 8,
9, 10, 11, 12,
13, 14, 15, 16]);
var m:Matrix3D = new Matrix3D();
m.rawData = v;
/*
matrix is stored as
[1, 5, 9, 13]
[2, 6, 10, 14]
[3, 7, 11, 15]
[4, 8, 12, 16]
*/
m.transpose();
/*
matrix is stored as
[1, 2, 3, 4]
[5, 6, 7, 8]
[9, 10, 11, 12]
[13, 14, 15, 16]
*/

No comments: