检测半径中的对象

时间:2012-08-20 03:33:10

标签: actionscript-3 object distance detect

我需要根据距离对其周围的物体进行点检查,并且无法确定在任何给定时间在舞台上的物体,因此我不能只追踪靠近它的所有物体。

我如何做到这一点,除了检测物体外,它还可以检测附近物体是什么?

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

我不确定你在任何时候屏幕上会有多少个物体,但是如何在影片剪辑/舞台上骑车穿过所有的孩子并检查每一个。像 -

这样的东西
function prox(limit:int):MovieClip{
    for(var i:int = 0; i<stage.numChildren;i++)
        if(Math.abs(MovieClip(stage.getChildAt(i)).x - point.x) < limit && 
           Math.abs(MovieClip(stage.getChildAt(i)).y - point.y) < limit){
            return MovieClip(stage.getChildAt(i));
        }
    }
}

或者你可以通过改变返回类型

来扩展它以返回一个MovieClip数组
function prox(limit:int):Array{

添加数组var并将if中的代码更改为

array.push(MovieClip(stage.getChildAt(i));

return array;