根据坐标点判断两个矩形是否重叠

来源:互联网 发布:决战武林弩炮4 5数据 编辑:程序博客网 时间:2024/06/11 23:31

方法一、

2个矩形相交,一定有交叉线的,所以用下面的方法,可以求出是否相交,并且可以确定相交的位置~

假定矩形是用一对点表达的(minx,miny)(maxx, maxy) 
那么两个矩形rect1{(minx1,miny1)(maxx1, maxy1)}, rect2{(minx2,miny2)(maxx2, maxy2)} 

相交的结果一定是个矩形,构成这个相交矩形rect{(minx,miny)(maxx, maxy)}的点对坐标是: 
minx = max(minx1, minx2) 
miny = max(miny1, miny2) 
maxx = min(maxx1, maxx2) 
maxy = min(maxy1, maxy2) 

如果两个矩形不相交,那么计算得到的点对坐标必然满足 
minx > maxx 
或者 
miny > maxy

方法二、

·CGRectIntersectsRect(rect 1.feet 2)可以判断矩形结构是否交叉,两个矩形对象是否重叠。

0 0
原创粉丝点击