我需要帮助创建一个函数来检查movieclip是否在actionscript 3.0中的另一个movieclip中。我创建了一个名为MyImage的动画片段,由用户在名为BannerStage的另一个动画片段的顶部拖动。当用户停止拖动MyImage时,该函数应该返回true或false,如果MyImage在BannerStage中,则返回true;如果MyImage的所有角都在BannerStage之外,则返回false。
提前致谢。
编辑:
我的解决方案:
var inter = firstClip.getRect(this).intersection(secondClip.getRect(this));
if ((inter.width*inter.height) == 0) {
return false;
} else {
return true;
}
答案 0 :(得分:3)
如果你想测试一个角落是否在另一个角落的所有角落,请尝试这个:
banner.getRect().containsRect(draggable.getRect());
// or the reverse
draggable.getRect().containsRect(banner.getRect());
如果它们位于相同的坐标空间,则可以正常工作。
如果你关心的只是任何的一部分重叠任何部分(但你不在乎是否完全包含另一个)那么一个简单的hitTestObject的工作原理。
draggable.hitTestObject(banner);
// or
banner.hitTestObject(draggable);