给定两个矩形的坐标,找出矩形是不是重叠
Posted
技术标签:
【中文标题】给定两个矩形的坐标,找出矩形是不是重叠【英文标题】:Given coordinates of two rectangles, find out if the rectangles overlap or not给定两个矩形的坐标,找出矩形是否重叠 【发布时间】:2015-10-09 20:23:54 【问题描述】:我在完成此代码时遇到问题。我不确定如何在这里为矩形点p1.x
、p2.x
和p1.y
和p2.y
实现“结构”。我将如何继续解决这个问题?
我应该使用 CGPoint 吗?
struct coordinates
int x, y;
;
BOOL rectOverlap (int p1, int p2, int q1, int q2)
// getting error: "member reference base type 'int' is not a structure or union"
// on the "if" statement.
if (p1.x > q2.x || q2.x > p1.x || p1.y < q2.y || q2.y < p1.y) //this line error
return false;
else
return true;
int main(int argc, const char * argv[])
@autoreleasepool
//nothing here yet.
return 0;
【问题讨论】:
【参考方案1】:在 objc 中有一个结构体来定义一个名为 CGRect
的矩形。
您可以使用CGRectMake方法创建一个
然后你应该使用方法CGRectIntersectsRect
来确定两个CGRect
是否重叠。它的文档是here
【讨论】:
我想你的意思是CGRectIntersectsRect
。 CGRectIntersection
函数计算一个新矩形,该矩形是其参数的交集。以上是关于给定两个矩形的坐标,找出矩形是不是重叠的主要内容,如果未能解决你的问题,请参考以下文章