我有一个让我难过的棘手问题,请你快点看看吧......
我在另一个矩形中绘制一个矩形(我将它用作蒙版):
CanvasBorder.graphics.beginFill(0xf0ff00,0.1);
CanvasBorder.graphics.drawRect(100,100,550, 300);
CanvasBorder.graphics.drawRect((stage.stageWidth/2-Canvas.width/2),(stage.stageHeight/2-Canvas.height/2),250, 150);
CanvasBorder.graphics.endFill();
实际上是一个带有250x150切口的550x300盒子。
在我的一个功能中,我需要将INNER'剪切'框从250x150调整为150x100 - 但保持OUTER框完全相同。
通常当我调整普通矩形的大小时,我会这样做:
rectangle .width = 150;
rectangle .height = 100;
但是这个解决方案不起作用,我不知道如何引用形状的剪切。任何想法,我真的很难与这个,在谷歌上找不到任何东西。
感谢您的时间
ChainsawDR
答案 0 :(得分:0)
也许你可以像这样创建另一个Sprite
或Shape
:
// somewhere in your code declare the rectangleMask
var rectangleMas:Shape;
rectangleMask = new Shape();
// draw the rectangle the same way
// and add it to CanvasBorder (I assume that CanvasBorder is a DisplayObjectContainer)
CanvasBorder.addChild(rectangleMask);
然后你可以根据需要调整大小:
rectangleMask.witdth = 150;
rectangleMask.height = 100;
如果你想让那个矩形成为CanvasBorder的面具,你可以这样做:
CanvasBorder.mask = rectangleMask;