计算几何----判断两矩形是否相交

转自:https://blog.csdn.net/liangzhaoyang1/article/details/51090689

问题定义:给定两个边与坐标轴平行的矩形,分别由左上角与右下角两点指定(以此同时,我们可以用右上和左下的两个点来进行推出同样的结果。),即矩形(P1,P2)与(P3,P4),判断两矩形是否相交。

我的思路:如下图所示,首先求出P1与P3点在X方向较大值与Y方向较大值的交点,在下图中就是P3,用红点(记为M点)表示。

然后求出P2与P4点在X方向较小值与Y方向较小值的交点,在下图中就是P2,用橙色点(记为N点)表示。

如果M点的X坐标和Y坐标值均比N点相应的X坐标和Y坐标值小,亦即M和N可以分别构成一个矩形的左上角点和右上角点,则两矩形相交;其余情况则不相交。

                                   图1

 

 

下图给出第二个示例,表明相交则矩形的某一个顶点位于另一矩形内部作为判断依据是错误的。

                            图2

 

图3给出了相互包含的情况:

                            图3

下图给出了不相交时的示例,两矩形为上下关系,可见红点不在橙色点左上角,不能构成矩形,因此不相交。

                          图4

 

下面的例子同上,给出了两矩形为左右关系的情况。

                 图5
————————————————
版权声明:本文为CSDN博主「LzyRapX」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/liangzhaoyang1/article/details/51090689

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页