Кто-нибудь еще испытывал странные поведения и неожиданные значения при проверке stage.stageHeight, пока у вас есть Bandwith Profiler, открытый в Flash IDE?
Скажем, я использовал это для тестирования Perlin Noise:
package {
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.display.Sprite;
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.events.Event;
import flash.geom.Point;
[SWF(width="550", height="400", backgroundColor="#000000", frameRate="60")]
public class Clouds extends Sprite {
private var _bitmap:BitmapData;
private var _xoffset:int = 0;
private var _yoffset:int = 0;
public function Clouds() {
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
trace("stage.stageHeight: "+stage.stageHeight);
_bitmap = new BitmapData(stage.stageWidth, stage.stageHeight,true, 0xffffffff);
var image:Bitmap = new Bitmap(_bitmap);
addChild(image);
addEventListener(Event.ENTER_FRAME, onEnterFrame);
}
public function onEnterFrame(event:Event):void {
_xoffset = _xoffset + Math.random()*4 -2;
_yoffset = _yoffset + Math.random()*3;
var point:Point = new Point(_xoffset, _yoffset);
_bitmap.perlinNoise(200, 100, 3, 1000, false, true,
1, true, [point, point]);
}
}
}
Как вы видите здесь, swf установлен на высоту 400 ..
При выполнении с тестовым фильмом, control-enter, трассировка возвращает 400 .. теперь, если вы попробуете это с открытым Bandwidth Profiler, он вернет 300, а Sprite увеличится только до высоты 300.
Кто-нибудь испытывал то же самое?