2011-12-14 8 views
0

SWFLoaderコンポーネントを使用して外部swfをロードしています。ロードされているswfはマスクされているため、一部だけが表示されます。しかし、ロードされるとswf(loader.content.width/loader.content.height)の実際のサイズはマスクされた領域を含む完全なswfです。したがって、読み込まれたswfはitemrendererに正しく表示されません。swfの内容全体のサイズを取得するのではなく、マスクされた領域のサイズを取得する方法はありますか?また、私はマスクされた領域のサイズを変更する必要がありますマスクされた領域の幅と高さを取得する方法

答えて

0

デフォルトでは、幅と高さのプロパティは、可視性に関係なく常にオブジェクトの境界を参照します。

override public function get height() : Number { 
    return myMask.height; 
} 

override public function get width() : Number { 
    return myMask.width; 
} 

または同じかなり多く、オブジェクトの実際の目に見える境界を見つけるために、ビットマップの描画を使用します。

あなたはマスクサイズを返すために、ロードされたSWFのドキュメントクラスに高さと幅のgetterをオーバーライドすることができますより正確な衝突検出ではthis useful tutorialで行われます(2つのビットマップの結合についての部分をスキップし、色の検出のみを使用します)。

+0

Troy Gilbertのチュートリアルのリンクはもう見つかりませんでした。 –

+0

ありがとう、私は更新されたURLを指すようにリンクを変更しました。 – weltraumpirat

関連する問題