C⼀C++判断两矩形是否相交

2024-11-22 02:28:35
推荐回答(1个)
回答1:

判断相交的情况比较麻烦,所以我采用判断不相交的情况,其他情况就是相交了,一个if搞定
当一个矩形在另一个矩形的上方或者下方或者左方或者右方并且有一定距离即表明两个矩形不相交
bool IsRectsCross(const Rect_t &r1, const Rect_t &r2)
{
if ((r1.y+r1.h < r2.y) || (r2.y+r2.h < r1.y)
|| (r1.x+r1.w < r2.x) || (r2.x+r2.w < r1.x))
{
return false;
}
else
{
return true;
}
}