Java 2d检测到冲突

时间:2014-02-04 13:13:51

标签: java 2d collision

动态物体(坦克)与之相交  地图的边界。我应该根据碰撞中涉及的矩形禁用移动。 我怎样才能发现碰撞的结束?

P.S。对不起我的英文。

2 个答案:

答案 0 :(得分:0)

您可以检查交叉路口 -

public static boolean overlapRectangles (final Rectangle r1, final Rectangle r2) {
    if (
            r1.x < r2.x + r2.width 
         && r1.x + r1.width > r2.x 
         && r1.y < r2.y + r2.height 
         && r1.y + r1.height > r2.y
    )
        return true;
    else
        return false;
}

您可能需要阅读this article

答案 1 :(得分:0)

在Java 7中,您可以使用公共布尔交叉(Rectangle r)。

if ( r1.intersects(r2) ) {
    //do something...
}

更准确地说,检测碰撞结束是什么意思?