package { import com.formatlos.as3.lib.display.BitmapDataUnlimited; import com.formatlos.as3.lib.display.events.BitmapDataUnlimitedEvent; import flash.display.Bitmap; import flash.display.BitmapData; import flash.display.Sprite; import flash.geom.Rectangle; /** * @author Martin Raedlinger (mr@formatlos.de) * * use "-use-network=false" in your compiler settings */ [SWF(width='800',height='800',backgroundColor='0xcccccc',frameRate='33')] public class HugeBitmap extends Sprite { private var _hugeBitmapData : BitmapData; private var _bdu : BitmapDataUnlimited; public function HugeBitmap() { _bdu = new BitmapDataUnlimited(); _bdu.addEventListener(BitmapDataUnlimitedEvent.COMPLETE, onBmpReady); _bdu.addEventListener(BitmapDataUnlimitedEvent.ERROR, onBmpError); _bdu.create(5000, 5000, true); } private function onBmpReady(event : BitmapDataUnlimitedEvent) : void { _hugeBitmapData = _bdu.bitmapData; var rect : Rectangle = new Rectangle(10, 10, 10, 10); _hugeBitmapData.fillRect(rect, 0xffff0000); addChild(new Bitmap(_hugeBitmapData)); trace("BitmapData: w=" + _hugeBitmapData.width + " h=" + _hugeBitmapData.height); } private function onBmpError(event : BitmapDataUnlimitedEvent) : void { trace("Can't create BitmapData"); } } }