我有一个旋转的矩形,我不知道它的原始宽度和高度。由于当前的宽度和高度只是封装矩形的边界框,我如何找到实际的宽度和高度?感谢。
答案 0 :(得分:0)
您可以使用DisplayObject的getBounds() / getRect()并将显示对象本身作为参数传递。例如如果轮换yourClip
,请尝试以下操作:
trace(yourClip.getBounds(yourClip));
。
它应该非常接近原始尺寸。假设您正在使用显示对象(Sprite,MovieClips等),这可以正常工作。不确定它是否有帮助,但Mike Chambers' collision detection articles非常好。
在评论中你提到了“矩形”。那会是flash.geom.Rectangle吗? 如果您更喜欢仅使用几何类,我想您可以使用flash.geom.Matrix实例来跟踪坐标系。使用Matrix的transformPoint()变换矩形的角点应该是微不足道的。此外,您可以再次使用矩阵在坐标系之间来回移动(以及inverted版本)。 DisplayObject类仍然提供了许多方便的功能,因此您不需要自己进行矩阵数学运算。