Всем доброго времени суток. На сайте уважаемого Силина нашел клас, котрый позволяет делать некую полупрозрачную матовую рамку, напоминающую потертое стекло. Но не могу разобраться как это работает :-( Подскажите, кто знает.
Вот код взятый с его сайта
http://www.silin.fatal.ru :

Код:
import flash.filters.*;
import flash.geom.*;
import flash.display.*;
class GlassWin extends MovieClip {
var mouseDown:Boolean;
var mouseX:Number;
var mouseY:Number;
var alphaScreen:MovieClip;
var blurScreen:MovieClip;
var blurBitmap:BitmapData;
var w:Number;
var h:Number;
var intervalID;
public function GlassWin() {
w = Math.floor(_width);
h = Math.floor(_height);
var lowDepth = 0;
for (var i in this) {
//всех поднимем на 2, чтоб освободить место для скринов
if (this[i].getDepth() < lowDepth) {
lowDepth = this[i].getDepth();
}
_root.swapDepths.call(this[i], this[i].getDepth() + 2);
}
//////////////
var bounds = getBounds(this);
alphaScreen = this.createEmptyMovieClip("alphaScreen", lowDepth + 1);
blurScreen = this.createEmptyMovieClip("blurScreen", lowDepth);
alphaScreen._x = blurScreen._x = bounds.xMin;
alphaScreen._y = blurScreen._y = bounds.yMin;
alphaScreen.beginFill(0xFFFFFF, 35);
alphaScreen.lineTo(w, 0);
alphaScreen.lineTo(w, h);
alphaScreen.lineTo(0, h);
alphaScreen.endFill();
////////
blurBitmap = new BitmapData(w, h);
blurScreen.attachBitmap(blurBitmap, 0);
blurScreen.filters = [new BlurFilter(10, 10)];
getScreen();
intervalID = setInterval(this, "render", 40);
}
function onMouseDown() {
if (!hitTest(_root._xmouse, _root._ymouse)) {
return;
}
mouseX = _xmouse;
mouseY = _ymouse;
mouseDown = true;
}
function onMouseUp() {
mouseDown = false;
}
function render() {
if (mouseDown) {
_x += _xmouse - mouseX;
_y += _ymouse - mouseY;
mouseX = _xmouse;
mouseY = _ymouse;
}
getScreen();
updateAfterEvent();
}
function getScreen() {
var mtrx = new Matrix();
mtrx.tx = -(_x + blurScreen._x);
mtrx.ty = -(_y + blurScreen._y);
_visible = false;
blurBitmap.draw(_root, mtrx);
_visible = true;
}
}
Ответ уже найден, поэтому, простите.