$mival, да, и правда

Код:
package {
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.Loader;
import flash.display.Sprite;
import flash.events.*;
import flash.geom.Point;
import flash.geom.Rectangle;
import flash.net.URLRequest;
public class BitmapDataExample extends Sprite {
private var url:String = "Image.gif";
private var size:uint = 80;
public function BitmapDataExample() {
configureAssets();
}
private function configureAssets():void {
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
var request:URLRequest = new URLRequest(url);
loader.x = size * numChildren;
loader.load(request);
addChild(loader);
}
private function duplicateImage(original:Bitmap):Bitmap {
var image:Bitmap = new Bitmap(original.bitmapData.clone());
image.x = size * numChildren;
addChild(image);
return image;
}
private function completeHandler(event:Event):void {
var loader:Loader = Loader(event.target.loader);
var image:Bitmap = Bitmap(loader.content);
var duplicate:Bitmap = duplicateImage(image);
var bitmapData:BitmapData = duplicate.bitmapData;
var sourceRect:Rectangle = new Rectangle(0, 0, bitmapData.width, bitmapData.height);
var destPoint:Point = new Point();
var operation:String = ">=";
var threshold:uint = 0xCCCCCCCC;
var color:uint = 0xFFFFFF00;
var mask:uint = 0x000000FF;
var copySource:Boolean = true;
bitmapData.threshold(bitmapData,
sourceRect,
destPoint,
operation,
threshold,
color,
mask,
copySource);
}
private function ioErrorHandler(event:IOErrorEvent):void {
trace("Unable to load image: " + url);
}
}
}
Цитата:
Сообщение от __etc
$mival, а зачем вы клонируете и Bitmap и BitmapData?
|
Подгруженная картинка несколько раз на странице отображается (страница - несколько экранов).
Цитата:
Сообщение от BlooDHounD
$mival, да ... с BitmapData вы погорячились. это пожалуй единственный класс во Флэше, который стоит клонировать, тольк в том случаи если его надо изменять не затронув другие вьюхи. использование одной и той же битмапдаты нехило экономит память.
|
а как использовать одну и туже питмабдату несколько раз?
(я средне понял, что спросил, т.к. ещё не очень разобрался в этой теме.)