矩形/矩形碰撞检测

时间:2019-01-25 17:06:38

标签: python-3.x rectangles

我试图解决两个矩形相交/重叠时的问题。当这种情况发生时,我想知道交叉点是对还是错。我找到了一个解决方案,但是它是用C或C ++编写的。我想用Python编写这些代码。

以下是来源:http://www.jeffreythompson.org/collision-detection/rect-rect.php

1 个答案:

答案 0 :(得分:0)

这实际上是我编写的python代码的第一行(不过我确实知道C ++)

def rectRect(r1x, r1y, r1w, r1h, r2x, r2y, r2w, r2h):

    # are the sides of one rectangle touching the other?

    return r1x + r1w >= r2x and    # r1 right edge past r2 left
        r1x <= r2x + r2w and   # r1 left edge past r2 right
        r1y + r1h >= r2y and    # r1 top edge past r2 bottom
        r1y <= r2y + r2h    # r1 bottom edge past r2 top

恕我直言rectRect对于这个函数来说真是个坏名字,但是我还是从链接代码中保留了它。