C++如何判断两个矩形框有交集-创新互联
矩形框是否有交集的判断
分享文章:C++如何判断两个矩形框有交集-创新互联
分享链接:http://lswzjz.com/article/cshddg.html
本人也查找了一些方法,发现直接套用公式,无法满足需求,主要是自己没有花一点时间去思考;
创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站制作、做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的土默特右旗网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!矩形框的判断,主要方法是判断两个矩形没有交集,然后再取反,就能判断出矩形框是否存在交集;
但是其中重要的一点是需要结合坐标系,主要是y轴数据的变化
坐标系一(普通坐标系)
蓝色刻度是x轴,红色刻度是y轴;
(x11, y11)和 (x12, y12)是红色矩形框的坐标
(x21, y21)和 (x22, y22)是蓝色矩形框的坐标
存在以下情况说明矩形框无交集
x12< x21 || x22< x11 || y12 >y21 || y22 >y11
接口如下
bool cal(int32_t x11,int32_t y11,int32_t x12,int32_t y12,int32_t x21,int32_t y21,int32_t x22,int32_t y22)
{if(!(x12 >x21 || x22 >x11 || y12 >y21 || y22 >y11))
{return true; //有交集
}else{return false; //无交集
}
}
坐标系二(针对图像中的矩形数据)
蓝色刻度是x轴,红色刻度是y轴;
(x11, y11)和 (x12, y12)是红色矩形框的坐标
(x21, y21)和 (x22, y22)是蓝色矩形框的坐标
存在以下情况说明矩形框无交集
x12< x21 || x22< x11 || y12< y21 || y22< y11
接口如下
bool cal(int32_t x11,int32_t y11,int32_t x12,int32_t y12,int32_t x21,int32_t y21,int32_t x22,int32_t y22)
{if(!(x12< x21 || x22< x11 || y12< y21 || y22< y11))
{return true; //有交集
}else{return false; //无交集
}
}
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
分享文章:C++如何判断两个矩形框有交集-创新互联
分享链接:http://lswzjz.com/article/cshddg.html