我正在尝试测试计算和创建某个矩阵所需的时间。正在使用的代码如下。
import flash.geom.Matrix;
import flash.utils.getTimer;
var iter:int = 0;
var titer:int = 10000;
var time:Number;
var ttime:Number;
var zm:Number = 1.5;
var sx:Number = 0, sy:Number = 0.5;
var rot:Number = Math.PI/6;
var tx:Number = 10, ty:Number = 0;
var w:Number = 50, h:Number = 50;
var cr:Number = Math.cos(rot), sr:Number = Math.sin(rot);
var m3:Matrix, mt:Matrix;
for(iter; iter<titer; iter++) {
time = getTimer();
m3 = new Matrix(cr*(sx+zm), -sr*(sx+zm), sr*(sy+zm), cr*(sy+zm), tx+w-cr*w*(sx+zm)-sr*h*(sy+zm), ty+h+sr*w*(sx+zm)-cr*h*(sy+zm));
ttime += getTimer() - time;
}
trace('total:', ttime, 'avg:', Number(ttime)/Number(titer));
我确定我正确地设置了它,但是痕迹正在返回'NaN'。什么可能导致这种情况?
答案 0 :(得分:0)
这将是非常简短的响应:var ttime: Number = 0;
;)初始化变量是一种很好的编程习惯。
另外,我不了解for
性能测试的结构。您如何看待这种建筑?
var time:uint = getTimer();
//your 'for' with Matrix
time = getTimer() - time;
//trace results...