2012-04-23 63 views
1

考慮下面的代碼:不能設置flash.geom.Matrix3D在RAWDATA

var t:Matrix3D = new Matrix3D(
    new Vector.<Number>([1,0,0,0,0,1,0,0,0,0,1,0,10,10,0,1]) 
); 

trace(t.rawData[12]); 

trace命令會打印出「0」對我來說,它是與RAWDATA包含標識矩陣實際調試可見。我根本無法設置Matrix3D包含的值!

我使用閃光燈11.2。

謝謝您的幫助!

回答

1

很確定你創建一個預先填充的Vector的語法是錯誤的。

你應該有:

new <Number>[values] 

相反的:

new Vector.<Number>([values]) 

演示:

var wrong:Vector.<int> = new Vector.<int>([1,2,3]); 
var right:Vector.<int> = new <int>[1,2,3]; 

trace(right[1]); // 2 
trace(wrong[1]); // error 
+0

嘗試了以下內容: 變種T:的Matrix3D =新Matrix3D(新([ 1,0,0,0,0,1,0,0,0,0,1,0,10,10,0,1]));但它甚至沒有編譯與flex builder(IT WAS WRONG) – klapancius 2012-04-23 01:36:00

+0

它幫助,非常感謝! – klapancius 2012-04-23 01:37:47