actionscript (AS3) 用に .swc ファイルにエクスポートされた MovieClip オブジェクトがあります。
クリップのインスタンスを変更せずにステージに配置すると、ステージの約半分の左上隅に表示されます (つまり、オブジェクトの右下の象限だけが表示されます)。これは、クリップの登録点が左上隅ではないためだと理解しています。
ムービークリップで getBounds() を呼び出すと、クリップの境界を取得できます (おそらく、整列されている「ポイント」から)。これは、(左: -303、上: -100、右: 303、下: 100)、クリップ x と y から左と上の値を差し引くことができます。
clip.x -= bounds.left;
clip.y -= bounds.top;
これにより、クリップがステージ上で完全に整列し、クリップの左上がステージの隅に直角に配置されているように見えます。
しかし!そのロジックに従うと、ステージの中央に配置するときに機能しないようです。
clip.x = (stage.stageWidth / 2);
etc...
これにより、クリップがステージの右下隅にあるクレイジーなパラレル ユニバースが作成されます。
私が持っている唯一の手がかりは、以下を見ていることです:
clip.transform.matrix
と
clip.transform.concatenatedMatrix
マトリックスの tx 値は 748 (ステージの高さの半分) ty 値は 426 (ステージの高さの半分)
concatenatedMatrix の tx 値は 1699.5、ty 値は 967.75 です。
それは明らかにムービークリップが配置される場所でもありますが、なぜでしょうか? この追加の翻訳はどこから来たのですか?