Flood Fill with Flash ActionScript

Posted by druva | Flash, as3, utils | Friday 1 January 2010 5:41 am

example

import flash.display.*;
import flash.events.MouseEvent;
import flash.geom.Rectangle;

var _rectData:BitmapData = new BitmapData(300, 300);

function FloodFill () {

	_rectData.fillRect(new Rectangle(0, 0, 150, 150), 0xFFCCCCCC);
	_rectData.fillRect(new Rectangle(150, 0, 150, 150), 0xFFCC0000);
	_rectData.fillRect(new Rectangle(0, 150, 150, 150), 0xFF00CC00);
	_rectData.fillRect(new Rectangle(150, 150, 150, 150), 0xFF0000CC);

	var rect:Sprite = new Sprite();
	addChild(rect);

	var bitmap:Bitmap = new Bitmap(_rectData);
	rect.addChild(bitmap);

	rect.addEventListener(MouseEvent.CLICK, onclickRect);
}

function onclickRect(event:MouseEvent):void {
	_rectData.floodFill(mouseX, mouseY, 0xFF000000 | Math.random() * 0xCCCCCC);
}

FloodFill();

(more…)