栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

计算两个相交矩形的重叠部分的坐标

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

计算两个相交矩形的重叠部分的坐标

假设polygon(某一矩形)于box(另一个矩形)相交,设左上角为原点,左下为xy轴正方向,则polygon_top_left为polygon的左上角坐标,polygon_bottom_right为右下角坐标。同上,box_top_left和box_bottom_right分别为box的左上角和右下角坐标。
则两个矩形相交的部分的坐标可用以下方法求解:

def get_overlap(polygon_top_left, polygon_bottom_right, box_top_left, box_bottom_right):
    # 左上角为原点
    Xa1 = polygon_top_left[0]
    Xb1 = polygon_top_left[1]
    Xa2 = polygon_bottom_right[0]
    Xb2 = polygon_bottom_right[1]

    Ya1 = box_top_left[0]
    Yb1 = box_top_left[1]
    Ya2 = box_bottom_right[0]
    Yb2 = box_bottom_right[1]

    Xc1 = max(Xa1, Ya1)
    Yc1 = max(Xb1, Yb1)
    Xc2 = min(Xa2, Ya2)
    Yc2 = min(Xb2, Yb2)
    return [Xc1, Yc1, Xc2, Yc2]
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/269601.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号