可用來將影像模糊化~ Try it!
Blur
import flash.display.BitmapData; function Blur():Void { var myBitmapData:BitmapData = BitmapData.loadBitmap("brg"); var height:Number = myBitmapData.height; var width:Number = myBitmapData.width; var gray:Array = new Array(width); for(var i:Number = 0 ; i < width ; i++) gray[i] = new Array(height); var gray2:Array = new Array(width); for(var i:Number = 0 ; i < width ; i++) gray2[i] = new Array(height); //RGB to GRAY for(var i:Number = 0 ; i < width ; i++) { for(var j:Number = 0 ; j < height ; j++) { var rgb:Number = myBitmapData.getPixel(i,j); var r:Number = 0xFF&(rgb >> 16); var g:Number = 0xFF&(rgb >> 8); var b:Number = 0xFF&rgb; gray[i][j]= 0.299*r + 0.587*g +0.114*b; } } for(var x = 1; x < width-1;x++) { for(var y = 1; y < height-1;y++) { /** 00(a) 10(b) 20(c) 01(d) 11(*) 21(e) 02(f) 12(g) 22(h) */ var a = gray[x-1][y-1]*0.1; var b = gray[x][y-1]*0.1; var c = gray[x+1][y-1]*0.1; var d = gray[x-1][y]*0.1; var e = gray[x][y]*0.1; var f = gray[x+1][y]*0.1; var g = gray[x-1][y+1]*0.1; var h = gray[x][y+1]*0.1; var i = gray[x+1][y+1]*0.1; var gc = (a+b+c+d+e+f+g+h+i); gray2[x][y] = 0xff000000 |gc<<16 | gc<<8 | gc; } } //set pixel value for(var i:Number = 0 ; i < width ; i++) { for(var j:Number = 0 ; j < height ; j++) { myBitmapData.setPixel(i,j,gray2[i][j]); } } var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth()); mc.attachBitmap(myBitmapData,this.getNextHighestDepth()); } Blur();