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

Регистрация: Oct 2006
Сообщений: 114
По умолчанию Как сохранить прозрачность при PixelDissolve

Есть след код:

Код:
var tim:Timer = new Timer(10);
	tim.start();
	tim.addEventListener(TimerEvent.TIMER,timerTick);

	function timerTick(event:TimerEvent):void
	{
                          var randomNum:Number = Math.floor(Math.random() * int.MAX_VALUE);
		trace(bitmapData.rect);
		var nPix:Number =  bitmapData.width * bitmapData.height/10;
		bitmapData.pixelDissolve(bitmapData,bitmapData.rect,new Point(0,0),randomNum,nPix, 0xFFFFFFFF);
			
		var grayRegion:Rectangle = bitmapData.getColorBoundsRect(0xFFFFFFFF, 0xFFFFFFFF, false);
    		if (grayRegion.width == 0 && grayRegion.height == 0 ) 
		{
	    		tim.stop();
		}
Он использует bitpmapData, полученный с помощью Loader из PNG файла с дефолтными установками. PNG файл содержит прозрачность, но при применении эффекта она убивается... Возможно я напутал с цветами в ARGB... По идее плниаровалось, что объект будет растворяться в белый цвет и исчезать (для исчезания отдельный код). Эффект работает, но почему-то убивается прозрачность и картинка при последующем вызове становится на белом фоне вместо прозрачного...

Подскажите, пожалуйста, как исправить ситуацию!
Заранее спасибо!