簡體   English   中英

Flash AS3:如何在另一個Rect中調整Rect的大小?

[英]Flash AS3: How to Resize a Rect within another Rect?

我遇到了一個棘手的問題,請您快速瀏覽一下...

我在另一個這樣的矩形中繪制一個矩形(我將其用作遮罩):

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();

有效地是550x300的框,其尺寸為250x150。

在我的一項功能中,我需要將“內部”剪切框的尺寸從250x150調整為150x100-但要使外部框完全相同。

通常,當我調整普通矩形的大小時,可以這樣做:

rectangle .width = 150;
rectangle .height = 100;

但是此解決方案不起作用,我也不知道如何引用形狀的切口。 任何想法,請問我真的很為此掙扎,無法在Google上找到任何東西。

謝謝你的時間

電鋸DR

也許您可以這樣創建另一個SpriteShape

// 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;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM