红色:父级动画片段内的形状,
黄色:父级动画片段中的儿童
Image http://frontenddev.com/images/stack.png
我想为黄点制作动画,但要确保它们永远不会脱离红色形状的边界。我该如何解决这个问题?
答案 0 :(得分:0)
这基本上等同于为自定义形状滚动自己的物理引擎。我建议调查现有的物理引擎并应用一个来满足您的需求。
也就是说,如果对象离开显示对象的边界是可以的,并且你只是不希望它们出现在那种情况下,你可以使用同一个显示对象的第二个副本来掩盖原始对象。
答案 1 :(得分:0)
尝试使用hitTestObject
。它评估显示对象以查看它是否与obj
显示对象重叠或相交。
for each(var yellow:DisplayObject in yelloDotsArray)
{
if(yellow.hitTestObject(theRed))
trace("this dot is within the limits");
else
trace("this dot is outside the red area");
}
答案 2 :(得分:0)
对于外部形状是矩形(或矩形作为图片的联合)和内部形状是圆形,检查圆心和所有圆的所有矩形边缘之间的距离比使用hitTestObject要便宜得多。
此外,我建议使用现有的库,例如http://code.google.com/p/collisiondetectionkit。