
Код:
import flash.filters.ColorMatrixFilter;
desaturation = 0;
function getDesaturationFilter (t) {
t = t ? t : 1;
var r = 0.212671;
var g = 0.715160;
var b = 0.072169;
return new ColorMatrixFilter ([t * r + 1 - t, t * g, t * b, 0, 0, t * r, t * g + 1 - t, t * b, 0, 0, t * r, t * g, t * b + 1 - t, 0, 0, 0, 0, 0, 1, 0]);
}
_root.createEmptyMovieClip ("mc", 2);
mc.beginGradientFill ("linear", [0xFF0000, 0x00FF00, 0x0000FF], [100, 100, 100], [0, 128, 255], {a:200, b:0, c:0, d:0, e:200, f:0, g:200, h:200, i:1});
mc.moveTo (100, 100);
mc.lineTo (100, 300);
mc.lineTo (300, 300);
mc.lineTo (300, 100);
mc.lineTo (100, 100);
mc.endFill ();
mc.onEnterFrame = function () {
if (desaturation <= 0) {
des = 0.05;
} else if (desaturation >= 1) {
des = -0.05;
}
desaturation += des;
this.filters = new Array (getDesaturationFilter (desaturation));
};