Foundation ActionScript 3.0 Image Effects 1 mirrorboy forked:0favorite:0lines:43license : MIT License modified : 2012-01-25 02:48:16 Embed Tweet package { import flash.display.BitmapData; import flash.display.Shape; import flash.display.Sprite; import flash.events.Event; import flash.events.MouseEvent; public class DrawingBitmapStrokes extends Sprite { public function DrawingBitmapStrokes() { stage.addEventListener(MouseEvent.MOUSE_DOWN,onStageMouseDown); stage.addEventListener(MouseEvent.MOUSE_UP,onStageMouseUp); } private function createBrushStroke():void{ var radius:uint = Math.random() * 10 + 2; var diameter:uint = radius * 2; var shape:Shape = new Shape(); shape.graphics.beginFill(Math.random() * 0xFFFFFF); shape.graphics.drawCircle(radius,radius,radius); shape.graphics.endFill(); var brushStroke:BitmapData = new BitmapData(diameter,diameter,true,0x00000000); brushStroke.draw(shape); graphics.lineStyle(diameter); graphics.lineBitmapStyle(brushStroke); } private function onStageMouseDown(event:Event):void { createBrushStroke(); graphics.moveTo(stage.mouseX,stage.mouseY); stage.addEventListener(MouseEvent.MOUSE_MOVE,onStageMouseMove); } private function onStageMouseUp(event:MouseEvent):void { stage.removeEventListener(MouseEvent.MOUSE_MOVE,onStageMouseMove); } private function onStageMouseMove(event:MouseEvent):void { graphics.lineTo(stage.mouseX,stage.mouseY); event.updateAfterEvent(); } } } Code Fullscreen Preview Fullscreen MouseEvent.MOUSE_MOVE updateAfterEvent mouseY mouseX addEventListener MouseEvent removeEventListener MouseEvent.MOUSE_UP MouseEvent.MOUSE_DOWN Math.random Sprite uint