— boreal-kiss.com

[AS3]ColorMatrixFilterメモ

行列で書くとわかりやすい。ColorMatrixFilter(引数a0 – a19の計20個!)による元のピクセル値(R, G, B, alpha)とフィルター処理後のピクセル値(R_new, G_new, B_new, alpha_new)の関係は以下の通り。

theDisplayObject(DisplayObjectのサブクラス or BitmapDataクラス)に上記フィルターをかける場合は以下の通り。


import flash.filters.ColorMatrixFilter;

var matrix:Array = new Array();
matrix = matrix.concat([a0,a1,a2,a3,a4]);	//R
matrix = matrix.concat([a5,a6,a7,a8,a9]);	//G
matrix = matrix.concat([a10,a11,a12,a13,a14]);	//B
matrix = matrix.concat([a15,a16,a17,a18,a19]);	//alpha
var f:ColorMatrixFilter = new ColorMatrixFilter(matrix);
theDisplayObject.filters = [f];

ColorMatrixFilter クラスを使用すると、入力イメージの各ピクセルの RGBA カラー値とアルファ値に 4 × 5 マトリックス変換を適用することで、新しい RGBA カラー値とアルファ値から成る結果を作成できます。

ColorMatrixFilter – ActionScript 3.0 コンポーネントリファレンスガイド

[関連リンク]
幕末古写真ジェネレータをハックする – てっく煮ブログ

1 comment
  1. […] 以下参考 ・Mario Klingemann氏のColorMatrixクラスのAS3バージョン ・■[as3] flash.filters.ColorMatrixFilter ・ColorMatrixFilter ・[AS3]ColorMatrixFilterメモ – boreal-kiss.com […]

Submit comment