ColorMatrixFilter () 建構函式
public function ColorMatrixFilter(matrix:Array = null)
DisplayObject.filters = ColorMatrix 陣列物件
索引的陣列,其中包含目前和顯示物件相關的每個濾鏡物件。
適用於 Adobe Flash Professional CS5 的 ActionScript 3.0 參考__●flash.filters.ColorMatrixFilter類別
適用於 Adobe Flash Professional CS5 的 ActionScript 3.0 參考__●flash.filters.ColorMatrixFilter.matrix屬性
適用於 Adobe Flash Professional CS5 的 ActionScript 3.0 參考__●flash.display.DisplayObject.filters屬性
原圖:將在Flash中處理成灰階。
參考此篇處理方式:
UNDERSTANDING AS3 COLORMATRIXFILTER CLASS
991217_ColorMF_1.swf
package { import flash.display.Sprite; import flash.display.BitmapData; import flash.filters.ColorMatrixFilter; import flash.display.Bitmap; import flash.display.DisplayObject; public class ColorMF_991217 extends Sprite{ var photo1:BitmapData = new MyPhoto(0,0); var bm:Bitmap = new Bitmap(photo1); public function ColorMF_991217() { addChild(bm); var matrix:Array = new Array(); matrix = matrix.concat([0.5, 0.5, 0.5, 0, 0]); matrix = matrix.concat([0.5, 0.5, 0.5, 0, 0]); matrix = matrix.concat([0.5, 0.5, 0.5, 0, 0]); matrix = matrix.concat([0, 0, 0, 1, 0]); var myFilter:ColorMatrixFilter = new ColorMatrixFilter(matrix); DisplayObject(bm).filters = [myFilter]; } } }
參考此篇處理方式:Matrix Operations for Image Processing - Paul Haeberli
991217_ColorMF_2.swf
package { import flash.display.Sprite; import flash.display.BitmapData; import flash.filters.ColorMatrixFilter; import flash.display.Bitmap; import flash.display.DisplayObject; public class ColorMF2_991217 extends Sprite{ var photo1:BitmapData = new MyPhoto(0,0); var bm:Bitmap = new Bitmap(photo1); public function ColorMF2_991217() { addChild(bm); //matrix 變形矩陣 - 灰階處理 var matrix:Array = new Array(); var rwgt:Number = 0.3086; var gwgt:Number = 0.6094; var bwgt:Number = 0.0802; matrix = matrix.concat([rwgt, gwgt, bwgt, 0, 0]); matrix = matrix.concat([rwgt, gwgt, bwgt, 0, 0]); matrix = matrix.concat([rwgt, gwgt, bwgt, 0, 0]); matrix = matrix.concat([0, 0, 0, 1, 0]); //ColorMatrixFilter建構式,以指定的參數 matrix 初始化新的 ColorMatrixFilter 實體。 var myFilter:ColorMatrixFilter = new ColorMatrixFilter(matrix); //DisplayObject(bm).filters = [myFilter]; //DisplayObject物件的filter屬性參照所有濾鏡組成的陣列 bm.filters = [myFilter]; trace(myFilter.matrix); trace(myFilter); } } }
沒有留言:
張貼留言