2011-09-23 75 views
0

我試圖運行下面的函數,其中car一個影片剪輯:AS3:無效的位圖

public function cacheCar():void 
{ 
car.bounded = new Rectangle(car.getBounds(car)); 
var carOffset:Matrix = car.transform.matrix; 
carOffset.tx = car.x - car.bounded.x; 
carOffset.ty = car.y - car.bounded.y; 

car.bmpData = new BitmapData(car.bounded.width,car.bounded.height,true,0); 
car.bmpData.draw(car, carOffset); 
} 

但我recieving以下錯誤:

ArgumentError: Error #2015: Invalid BitmapData. at flash.display::BitmapData/ctor() at flash.display::BitmapData() at com.George.MegaAmazingApp.Components::Road/cacheCar() [C:\path\to\class\called\Road.as:55]

55號線:car.bmpData = new BitmapData(car.bounded.width,car.bounded.height,true,0);

任何人都可以看到這是爲什麼?

回答

0

寬度或高度爲BitmapData將返回0。嘗試獲得使用階段的界限:car.bounded = car.getBounds(car.stage);

在一個側面說明,getBounds()返回一個Rectangle所以你並不需要創建一個新的。