Показать сообщение отдельно
Старый 19.07.2007, 19:33
Lobster2 вне форума Посмотреть профиль Отправить личное сообщение для Lobster2 Найти все сообщения от Lobster2
  № 1  
Ответить с цитированием
Lobster2

Регистрация: Jul 2007
Сообщений: 31
По умолчанию 2 и более градиентных масок используя BitMap

здравствуйте!
ох уж этот битмап - вот-вот кажется что всё понятно, шаг в сторону и всё ( болото

у меня один слой просвечивает другой через маску, а маской управляет некий объект obj1, проблемма в том, что мне нужно много масок управляемых несколькими объектами - тут и начинаются беды с битмап - то один работает, то другой, то ниодного

очень расчитываю на дельный совет - чувствую истина где-то рядом))

спасибо большое

вот пример с одной маской и одним объектом
Код:
Stage.scaleMode = 'noScale';


this.createEmptyMovieClip("display_mc", this.getNextHighestDepth());
display_mc._x = reveal_mc._x;
display_mc._y = reveal_mc._y;


var maskbmp = new flash.display.BitmapData(mask_mc._width, mask_mc._height, true, 0);
var revealbmp = new flash.display.BitmapData(reveal_mc._width, reveal_mc._height, true, 0);
var displaybmp = revealbmp.clone();


maskbmp.draw(mask_mc);
revealbmp.draw(reveal_mc);
display_mc.attachBitmap(displaybmp, 1);


var displayRect = new flash.geom.Rectangle(0,0, mask_mc._width, mask_mc._height);
var offset = new flash.geom.Point(0, 0);
var basePoint = new flash.geom.Point(0,0);

display_mc.onEnterFrame = function(){
	
	offset.x = obj1._x - displayRect.width/2;
	offset.y = obj1._y - displayRect.height/2;

	displayRect.x = offset.x;
	displayRect.y = offset.y;

	displaybmp.fillRect(displaybmp.rectangle, 0);
	displaybmp.copyPixels(revealbmp, displayRect, offset, maskbmp, basePoint, true); 
}