2011-03-30 109 views
0

是否有可能繪製位圖到一個圖形對象一樣如何在圖形對象的任何位置繪製位圖?

this.graphics.beginBitmapFill(bitmapData, matrix, false); 
this.graphics.drawRect(0, 0, w, h); 
this.graphics.endFill(); 

有偏差? 一個簡單的moveTo(x, y)在beginBitmapFill之前調用不起作用:/ 也沒有改變drawRect的x和y值......(這似乎與矩陣的翻譯效果相同......) 此外,我不' t想要在單獨的圖形對象中繪製該事物並將其添加到另一箇中...

任何線索?

回答

2

晚了一點答案在這裏,但因爲我發現這個問題,關於這個問題的谷歌搜索的時候,我想我會仍要添加一個答案。

您可以使用矩陣轉換和位置的結合,爲drawRect中調用在圖形的任何位置繪製位圖對象:

var positionX:int = 100; 
var positionY:int = 200; 
var matrix:Matrix = new Matrix(); 

matrix.tx = positionX; 
matrix.ty = positionY; 

graphics.beginBitmapFill(bitmapData, matrix); 
graphics.drawRect(positionX, positionY, bitmapData.width, bitmapData.height); 
graphics.endFill(); 

說實話,我從來沒有真正完全理解什麼矩陣是;),並且對於如何使用它沒有任何直觀的感受,所以很可能有其他方法或許更好的方法來實現它,但上面的方法對我很有幫助。