2014-07-07 94 views
0

我想知道如何定位嵌入調整大小的movieClip(my_mcA)中的movieClip(my_mcB);as3 movieclip在調整大小的movieclip中的位置

my_mcA本來是1080寬。

my_mcA設置根據舞臺寬度來調整大小和比例縮放與寬度則在加載的設備在這裏是調整大小代碼工作正常:我上的階段即測試

my_mcA.width = stage.stageWidth; 
my_mcA.scaleY = my_mcA.scaleX; 

500寬。 my_mcA重新調整。但是,如果我嘗試重新my_mcB是內部my_mcA似乎如果我用這個代碼以使用1080的舊值:

my_myA.my_mcB.x = stage.stageWidth; // NEED HELP WITH THIS LINE 

my_mcB應該是離開舞臺,但它顯示了在半路上屏幕中間。

在我的項目中,我將使用屏幕刷卡和許多補間,所以我需要獲得公式將對象放置在屏幕上的正確位置以及補間等運動的長度。我可以在調整大小的movieClip中正確定位嵌套的movieClip嗎?

回答

1

嘗試

my_mcA.my_mcB.x = 1080; 

如果縮放外容器(my_mcA)以適應屏幕,它應該不會影響my_mcB的內座標系。 500寬度將大致在1080的中間,聽起來就像你看到的那樣。

編輯:你問如何獲得內部顯示對象的原始寬度。您可以通過訪問內部動畫片段的寬度屬性來獲取它。這裏的內顯示對象寬度上通過使用縮放或width屬性縮放所述外顯示對象如何反應的示例:

trace("unscaled my_mcA.my_mcB.width="+mcA.my_mcB.width); 
my_mcA.scaleX=0.5; 
my_mcA.scaleY=0.5; 
trace("scaleX scaled my_mcA.my_mcB.width="+my_mcA.my_mcB.width); 
my_mcA.width=250; 
my_mcA.scaleY=my_mcA.scaleX; 
trace("width scaled my_mcA.my_mcB.width="+my_mcA.my_mcB.width); 

這應該是腳本的輸出:

unscaled my_mcA.my_mcB.width=550 
scaleX scaled my_mcA.my_mcB.width=550 
width scaled my_mcA.my_mcB.width=550 

編輯2 :如果要實際顯示寬度,需要與外部顯示對象的x縮放(將scaleX)乘以內顯示對象的width屬性:

trace("display width="+(my_mcA.my_mbB.width*my_mcA.scaleX)); 

這只是一個簡單的例子。使用多個嵌套影片剪輯,您需要應用整個嵌套鏈的縮放因子。

+0

這沒有工作謝謝。我想知道是否有代碼來找到這個var tho。像代碼一樣尋找原始大小?奇怪的是B受到了A的影響。 –