是否可以将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中绘制那个东西并将其添加到另一个......
有任何线索吗?
答案 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)
你可以使用BitmapData(你的位图)draw()或copyPixels()方法。
参见文档:
http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/display/BitmapData.html#draw%28%29