Forked from: nutsu's BitmapDataSample5 diff:9 BitmapDataSample7 nutsu forked:16favorite:9lines:56license : MIT License modified : 2009-10-26 19:16:19 Embed Tweet // forked from nutsu's BitmapDataSample5 // forked from nutsu's BitmapDataSample4 // forked from nutsu's BitmapDataSample3 // forked from nutsu's BitmapDataSample1 package { import flash.display.Sprite; import flash.display.BitmapData; import flash.display.Bitmap; import flash.geom.Matrix; import flash.geom.ColorTransform; import flash.display.BlendMode; import flash.filters.BlurFilter; import flash.events.Event; import flash.events.MouseEvent; [SWF(width=465,height=465,backgroundColor=0,frameRate=30)] public class BitmapDataSample7 extends Sprite { private var bmpdata:BitmapData; private var sprite:Sprite; private var matrix:Matrix; private var colortrans:ColorTransform; private var filter:BlurFilter; public function BitmapDataSample7() { //BitmapDataを作成して表示リストに追加 bmpdata = new BitmapData( 465, 465, false, 0 ); addChild( new Bitmap(bmpdata) ); //グラフィックの生成 sprite = newFig( 0, 0, 40, 0xFFFFFF ); //Matrix,ColorTransformの初期化 matrix = new Matrix(); colortrans = new ColorTransform(); //エフェクトの初期化 filter = new BlurFilter(2, 2, 1); //イベント addEventListener( Event.ENTER_FRAME, enterframe ); stage.addEventListener( MouseEvent.CLICK, reset ); } private function enterframe(e:Event):void { //エフェクトの適用 bmpdata.applyFilter( bmpdata, bmpdata.rect, bmpdata.rect.topLeft, filter ); //変形 matrix.identity(); var s:Number = Math.random()*2; matrix.scale( s, s ); matrix.rotate( Math.PI * Math.random() ); matrix.translate( mouseX, mouseY ); //色変換 colortrans.greenMultiplier = mouseX / 465; colortrans.blueMultiplier = mouseY / 465; colortrans.alphaMultiplier = Math.random(); //BitmapDataへ描画 bmpdata.draw( sprite, matrix, colortrans, BlendMode.ADD ); } private function reset(e:MouseEvent):void { bmpdata.fillRect( bmpdata.rect, 0xFF000000 ); } private function newFig( cx:Number, cy:Number, size:Number, col:uint ):Sprite { //中心(cx,cy), 幅高さsize, 色col のグラフィックを生成 var shape:Sprite = new Sprite(); shape.graphics.lineStyle( 0, 0x000000, 0.3 ); shape.graphics.beginFill( col ); shape.graphics.drawCircle( cx, cy, size*0.5 ); shape.graphics.drawCircle( cx, cy, size*0.4 ); var w:Number = size * 0.6; var h:Number = size * 0.15; shape.graphics.drawRect( cx - w/2, cy - h/2, w, h ); shape.graphics.endFill(); return shape; } } } Code Fullscreen Preview Fullscreen jackfreak rm_wonderfl postnum nunnuc dex157 PNC heckmeck hacker_y4vbj.. bitrocker BitmapData wonderfl本 filter greenMultiplier blueMultiplier alphaMultiplier BlendMode.ADD ColorTransform BlurFilter MouseEvent.ENTER_FRAME MouseEvent.CLICK MouseEvent Math.PI Math.random uint Number sort new page view favorite forked pv45 forked from: BitmapDataSample7.. h0gsyuh4ri forked:0 favorite:0lines:58 (diff:4) pv17 forked from: BitmapDataSample7.. hibibi forked:0 favorite:0lines:55 (diff:7) pv34 forked from: BitmapDataSample7.. river9116wonf forked:0 favorite:0lines:56 (diff:1) pv43 forked from: BitmapDataSample7.. photomotch forked:0 favorite:0lines:56 (diff:1) pv88 forked from: BitmapDataSample7.. shun_69 forked:0 favorite:0lines:56 (diff:3) pv76 forked from: BitmapDataSample7.. hacker_85_mvfk5 forked:0 favorite:0lines:56 (diff:1) pv84 forked from: BitmapDataSample7.. hacker_85_mvfk5 forked:0 favorite:1lines:56 (diff:1) pv74 forked from: BitmapDataSample7.. hacker_szoe51ih forked:0 favorite:0lines:56 (diff:1) 1 2NEXT