2010-07-15 124 views
0

我有一個bitmapdata對象,它填充了n個寬度爲1像素,高度不等的矩形。什麼是覆蓋位圖數據的最有效方法

我想運行一個循環並刪除舊的矩形,並用另一個替換它。

我應該做一些像像素的每個位圖列重置爲背景顏色,然後添加我想要的矩形?

for(i:int=0;i<bitmapdata.width;++i) 

{ 
    (for var j:int=0;j<bitmapdata.height;j++) 
{ 
    bitmapdata.setPixel(i,j,0x000000) 
} 

bitmapdata.fillrect(my new rect,0xffffff) 


} 

回答

0

嗯,我注意到你正在使用fillRect的東西,爲什麼不把它用於一切?只要fillRect有問題的列,然後從下往上做另一個fillRect來製作新的矩形。

我不確定這是否是最快的方法,但您可以嘗試copyPixels,我聽說它非常快。我的建議是,在沒有任何痛苦的情況下組裝一個位圖,該位圖從具有0px高度的列到全高度,並且當您需要X高度的列時,從複製列X處的預製位圖,並將其複製到原始「一堆酒吧」圖像上的Y列。

希望它有幫助。發表評論,我會盡力在答案中澄清,如果需要的話。

相關問題