0

元の幅と高さが分からない回転した四角形があります。現在の幅と高さは四角形をカプセル化するバウンディング ボックスにすぎないため、実際の幅と高さはどのように確認できますか? ありがとう。

4

1 に答える 1

0

DisplayObjectのgetBounds() / getRect()を使用して、表示オブジェクト自体をパラメーターとして渡すことができます。たとえば、yourClipが回転している場合は、次のことを試してください。

trace(yourClip.getBounds(yourClip));

元の寸法にかなり近いはずです。これは、表示オブジェクト(スプライト、ムービークリップなど)を使用している場合に機能します。それが役立つかどうかはわかりませんが、MikeChambersの衝突検出の記事はかなり良いです。

コメントであなたは「長方形」について言及しました。それはflash.geom.Rectangleでしょうか?ジオメトリクラスのみを使用したい場合は、flash.geom.Matrixインスタンスを使用して座標系を追跡できると思います。MatrixのtransformPoint()を使用して長方形のコーナーポイントを変換するのは簡単です。また、行列を再度使用して座標系間を行き来することもできます(バージョンも同様です)。それでも、DisplayObjectクラスにはかなりの数の便利な関数が用意されているため、行列の計算を自分で行う必要はありません。

于 2013-02-08T23:36:34.673 に答える