如果对象(x,y)靠近其他对象(x,y)

时间:2012-07-19 19:34:51

标签: java math if-statement coordinates

我在Java中有两个独立的对象,Object1Object2,两者的大小和方形都相同。对于每个对象,我可以得到 x y 坐标。我需要做的是检查Object1是否在Object2的某个距离内。 X Y 轴上的距离在32点以内。

一旦满足条件,我就可以运行我的代码了。 e.g。

    if ( check condition ) {
    //my code here
    }

2 个答案:

答案 0 :(得分:4)

尝试以下方法:

if(Math.abs(Object1.x - Object2.x) <= 32 && Math.abs(Object1.y - Object2.y) <= 32)
{
    // Do stuff
}

答案 1 :(得分:3)

如果这些是矩形而不是点,则需要补偿它们的宽度和高度。因为它们是正方形,所以只要使用它们的宽度

if(Math.abs(Object1.X - Object2.X) <= 32 + Object1.Width && Math.abs(Object1.Y - Object2.Y) <= 32 + Object1.Width)
{
    // my code here
}