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

typedefstructRect{ intx;  //左上角x坐标 inty;  //左上角Y坐标 ... typedef struct Rect{ int x;  //左上角x坐标 int y;  //左上角Y坐标 int h;  //矩形的高 int w;  //矩形的宽}RECT;矩形定义如上,请编写一个函数判断两个矩形是否相交。函数形式为 BOOL  FUN(矩形1,矩形2)。传入两个矩形,返回是否相交。我需要完整的代码,可以直接运行的。最好要有注释。我最终目的是做游戏物体碰撞检测。 展开
 我来答
周生008
推荐于2017-05-20 · TA获得超过1222个赞
知道小有建树答主
回答量:1329
采纳率:0%
帮助的人:647万
展开全部
判断相交的情况比较麻烦,所以我采用判断不相交的情况,其他情况就是相交了,一个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;
}
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式