首页 > 其他 > 详细

两个矩形的交, 拓展可求得矩形的并

时间:2019-08-01 00:03:51      阅读:124      评论:0      收藏:0      [点我收藏+]

拍成一维的,取两个左端点的右边, 取两个右端点的左边
同理 y轴

def compute_intersect(rect1, rect2):
    x0, y0, x1, y1 = rect1
    x2, y2, x3, y3 = rect2

    x4 = max(x0, x2)
    y4 = min(y0, y2)
    x5 = min(x1, x3)
    y5 = max(y1, y3)

    assert x4 <= x5 and y4 >= y5, "输入无交集"
    print("({}, {})".format(x4, y4))
    print("({}, {})".format(x5, y5))
    return (x5 - x4) * (y4 - y5)


def test_intersect():
    rect1 = (0, 3, 3, 0)
    rect2 = (2, 5, 5, 2)
    intersect = compute_intersect(rect1, rect2)
    print(intersect)

test_intersect()

两个矩形的交, 拓展可求得矩形的并

原文:https://www.cnblogs.com/Draymonder/p/11279584.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!