0

Actionscript3でネストされたMovieClipの座標を取得する必要があります。

コンテキストは次のとおりです。

ステージ>コンテナ>MovieClip1>MovieClip2

Containerに従ってMovieClip2の座標(xとy)を取得することを目指しています。localToGlobalを試しましたが、期待どおりに機能しないようです。

編集:

これは、MovieClip1のクラス内で試したコードです。

var globalPoint:Point = new Point(MovieClip2.x, MovieClip2.y);
globalPoint = Container.localToGlobal(globalPoint);
4

1 に答える 1

2

MovieClip2の位置はに相対的であるため、最初にそれをグローバルポイント(相対)に変換してから、そのグローバルポイントをの座標空間に変換MovieClip1する必要があります。MovieClip1StageContainer

var clipLocalPoint:Point = new Point(MovieClip2.x, MovieClip2.y);
var globalPoint:Point = MovieClip1.localToGlobal(clipLocalPoint);
var containerLocalPoint:Point = Container.globalToLocal(globalPoint);

より簡単に言えば、Point(0、0)にあるデフォルトをMovieClip2の座標空間から変換することでグローバルポイントを取得できます。

var globalPoint:Point = MovieClip2.localToGlobal(new Point());
var containerLocalPoint:Point = Container.globalToLocal(globalPoint);
于 2013-03-19T23:57:32.860 に答える