Applying Flood Fills
package {
import flash.display.BitmapData;
import flash.display.Bitmap;
import flash.display.Sprite;
import flash.geom.Rectangle;
import flash.events.MouseEvent;
public class Main extends Sprite {
private var _bitmapData:BitmapData = new BitmapData(200, 200);
public function Main () {
_bitmapData.fillRect(new Rectangle(0, 0, 100, 100), 0xFFFF0000);
_bitmapData.fillRect(new Rectangle(100, 0, 100, 100), 0xFF00FF00);
_bitmapData.fillRect(new Rectangle(0, 100, 100, 100), 0xFF0000FF);
_bitmapData.fillRect(new Rectangle(100, 100, 100, 100), 0xFFFFFF00);
var container:Sprite = new Sprite();
addChild(container);
var bitmap:Bitmap = new Bitmap(_bitmapData);
container.addChild(bitmap);
container.addEventListener(MouseEvent.CLICK, clickHandler);
}
private function clickHandler(event:MouseEvent):void {
_bitmapData.floodFill(mouseX, mouseY, 0xFF000000 | Math.random() * 0xFFFFFF);
}
}
}
Related examples in the same category