2010-03-17 58 views

回答

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"); 
} 
+0

谢谢。这工作得很好.. – fortysixandtwo 2010-03-18 10:06:06

0

这基本上相当于为自定义形状滚动自己的物理引擎。我建议寻找现有的物理引擎并应用一个来满足您的需求。

也就是说,如果对象离开显示对象的边界并且您不希望它们在此情况下显示,您可以使用同一显示对象的第二个副本来掩盖原始对象。

0

至于outter形状是矩形(或矩形作为图像的联合)和内形状为圆形,检查一个圆圈,所有的矩形的边的所有圆的中心之间的距离比使用便宜得多hitTestObject。

此外,我建议使用现有的库,如http://code.google.com/p/collisiondetectionkit