使用循環創建的SpikesImage
多個實例:
for(var i:int = 0; i < 10; i++)
{
var spikes:Bitmap = new SpikesImage();
spikes.x = i * spikes.width;
addChild(spikes);
}
儘管這會消耗內存,遠遠大於如果你有在舞臺上的一個位圖,並使用copyPixels()
多次繪製SpikesImage
的數據。
的一個例子:
var screen:Bitmap = new Bitmap();
screen.bitmapData = new BitmapData(stage.stageWidth, stage.stageHeight);
var spikes:Bitmap = new SpikesImage();
var drawPosition:Point = new Point();
var drawRect:Rectangle = spikes.bitmapData.rect;
for(var i:int = 0; i < 10; i++)
{
drawPosition.x = i * spikes.width;
screen.bitmapData.copyPixels(
spikes.bitmapData,
drawRect,
drawPosition
);
}
addChild(screen);
這種方法的倒臺不過是你失去變換圖形以任何方式(旋轉,縮放)的能力。
你能給我一個如何使用copyPixels()的例子嗎? – Craig
@克雷格當然,看看這個。 – Marty
另外,我不明白你給出的循環例子是如何工作的。變量i只是一個整數,你不能將一個x位置分配給一個整數。 – Craig