ProblemYou want to scroll the content of a BitmapData. SolutionUse the scroll( ) method of the BitmapData class. DiscussionThe operation and syntax is simple and straightforward. You pass the amounts you want to scroll the bitmap's content on the X- and Y-axes: _bitmap.scroll(xAmount, yAmount); The method effectively copies the pixels in the bitmap and pastes them back, offset by the amount specified. Any pixels that aren't overwritten in the operation remain the same as they were originally. You can call scroll( ) repeatedly in an enterFrame handler or timer function to animate the scrolling of the bitmap. The following code demonstrates this by generating a Perlin noise pattern and then scrolling it: public function Scroll( ) { _bitmap = new BitmapData(stage.stageWidth, stage.stageHeight, false, 0xffffffff); _bitmap.perlinNoise(100, 100, 3, 1000, true, true, 1, true); _image = new Bitmap(_bitmap); addChild(_image); addEventListener(Event.ENTER_FRAME, onEnterFrame); } public function onEnterFrame(event:Event):void { _bitmap.scroll(-1, -1); } Note that the edges that are not copied in the scroll are not cleared, but left as they were. See AlsoRecipes 8.12, 8.13, and 8.14 for other ways to manipulate the content in a bitmap. |