2011-10-24 92 views
0

我在as3代碼中有一個精靈,我想輸入它的高度來調整它的大小,我怎樣才能相應地縮放寬度?在as3中縮放一個精靈?

sprite.height = 200; 
sprite.width = ?? 

感謝

回答

6

在設置寬度/高度規模屬性更新,因此可以使用它們來縮放其他尺寸:

sprite.height = 200; 
sprite.scaleX = sprite.scaleY; 

更容易和錯誤比跟蹤/更新在自己的寬高比容易發生少。

9

如果你想擴展一個精靈,爲什麼不使用使用尺度方法?

sprite.scaleX = 2; 
sprite.scaleY = 2; 

否則,您將需要應用一個比率,例如寬度/高度。

說你的精靈是寬度:150,高度:100.這意味着寬度是高度的1.5倍。

// calculate ratio of scale factor 
var ratio:Number = sprite.width/sprite.height; // 1.5 

// apply ratio your sprite's original dimensions: 
sprite.height = 200; 
sprite.width = sprite.height * ratio; // 300 

這也可以使用矩陣變換來完成。