【python】判定矩形交集?

作者: 阿牛02 | 来源:发表于2019-07-24 16:41 被阅读0次

    题目:给定两个坐标轴对齐的矩形,判定它们是否相交;如果相交,给出它们相交所形成的矩形。

    分析:在二维平面中,如果一个矩形,它的长与x坐标轴平行,高与y坐标轴平行,那么矩形就是坐标轴对齐的。这样的矩形在数据结构上,可以用它的左下角坐标(x,y)再加上宽w和高h来表示。

    第一个矩形为(Sx,Sy),第二个矩形为(Rx, Ry),如果有交集则,Sx <= (Rx + Rw),Rx <= (Sx + Sw)

    Sy <= (Ry + Rh),Ry <= (Sy + Sh)。左下角坐标为max(Sx, Rx),左下角坐标为max(Sy, Ry).

    相交矩形的宽度满足:min(Sx + Sw, Rx + Rw) - max(Sx, Rx)

    相交矩形的高度满足:min(Sy + Sh, Ry + Rh) - max(Sy, Ry)

    code:省略。

    相关文章

      网友评论

        本文标题:【python】判定矩形交集?

        本文链接:https://www.haomeiwen.com/subject/idlzlctx.html