如何在Graphics-Object中的任何位置绘制位图?

时间:2011-03-30 15:20:34

标签: flash actionscript-3 graphics bitmap

是否可以将Bitmap绘制为图形对象,如

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

有偏移吗? 在beginBitmapFill之前进行简单的moveTo(x, y)调用不起作用:/ 也没有改变drawRect的x和y值......(这似乎与使用矩阵的翻译具有相同的效果......) 另外,我不想在单独的Graphics-Object中绘制那个东西并将其添加到另一个......

有任何线索吗?

2 个答案:

答案 0 :(得分: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();

老实说,我从来没有完全理解矩阵是什么;)并且没有任何直观的感觉如何使用它,所以很可能有其他的,也许更好的方法来做到这一点,但上面对我有用。

答案 1 :(得分:0)