两个矩形是否相撞

http://vip.cocode.cc/guacode/code/685

def intesects(rect1, rect2):
    x1, y1, w1, h1 = rect1
    x2, y2, w2, h2 = rect2
    return x1 + w1 > x2 and x2 + w2 > x1 and \
           y1 + h1 > y2 and y2 + h2 > y1


def test():
    data = [
        # rect1             rect2           结果
        [[0, 0, 100, 50], [50, 20, 100, 50], True],
        [[10, 20, 60, 40], [50, 43, 73, 50], True],
        # 下面是十字相交矩形
        [[0, 0, 100, 50], [25, -25, 50, 100], True],
    ]
    for d in data:
        a, b, r = d
        print('测试', d)
        if intesects(a, b) == r:
            print('测试成功')
        else:
            print('测试出错')


if __name__ == '__main__':
    test()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,259评论 19 139
  • 作为一个前端程序猿,下面这些站会让你眼前一亮。 amazeui框架组建丰富 http://amazeui.org...
    欧巴冰冰阅读 8,946评论 18 303
  • 从王宝强八月十四日凌晨二十一分发微博说妻子出轨经纪人之后,全网全媒都是那件事,比奥运夺金热闹多了,各种文章也是各抒...
    小主正红阅读 223评论 0 0
  • 意大利旅行笔记(九)石头花园 在我筹划意大利旅行时有朋友叮嘱我:如果去西西里,阿格里真托(Agrigento)是不...
    犇流阅读 1,014评论 0 2
  • 还有86天就可以迎来2017年,2017年第一天当然是制作新年计划的日子。新年计划中健身应该是最多而最重要或是在夏...
    傻子快跑阅读 2,522评论 7 25