import flash.filters.DisplacementMapFilterMode;
import flash.filters.DisplacementMapFilter;
import flash.filters.BlurFilter;
public class ActionPainting extends Sprite {
private const WIDTH:int = 600;
private const HEIGHT:int = 600;
private var pArr:Array = [];
private var container:Sprite = new Sprite();
private var bmpd:BitmapData = new BitmapData(WIDTH, HEIGHT, true, 0x0);
private var bmp:Bitmap = new Bitmap(bmpd);
private var blurFilter:BlurFilter = new BlurFilter(2.2, 2.2, 2);
private var rect:Rectangle = new Rectangle(0, 0, WIDTH, HEIGHT);
private var point:Point = new Point();
private var redOffset:int = Math.random()*300 - 100;
private var greenOffset:int = Math.random()*300 - 100;
private var blueOffset:int = Math.random()*300 - 100;
private var cTr:ColorTransform = new ColorTransform(1, 1, 1, 1, redOffset, greenOffset, blueOffset);
public function ActionPainting() {
stage.scaleMode = StageScaleMode.NO_SCALE;
this.graphics.beginFill(0xfffffff);
this.graphics.drawRect(0, 0, WIDTH, HEIGHT);
var map:BitmapData = new BitmapData(WIDTH, HEIGHT);
map.perlinNoise(84, 84, 5, Math.random()*100, false, true, 1, true);
bmp.filters = [new DisplacementMapFilter(map, point, 1, 1, 64, 64, DisplacementMapFilterMode.CLAMP)];
addEventListener(Event.ENTER_FRAME, enterFrame);
stage.addEventListener(MouseEvent.CLICK, mouseClick);