(1)设计一个算法,确定两个矩形是否相交(即有重叠区域)
(2)如果两个矩形相交,设计一个算法,求出相交的区域矩形
(1) 对于这个问题,一般的思路就是判断一个矩形的四个顶点是否在另一个矩形的区域内。这个思路最简单,但是效率不高,并且存在错误,错误在哪里,下面分析一 下。
如上图,把矩形的相交(区域重叠)分成三种(可能也有其他划分),对于第三种情况,如图中的(3),两个矩形相交,但并不存在一个矩形的顶点在另一个矩形 内部。所以那种思路存在一个错误,对于这种情况的相交则检查不出。
仔细观察上图,想到另一种思路,那就是判断两个矩形的中心坐标的水平和垂直距离,只要这两个值满足某种条件就可以相交。
矩形A的宽 Wa = Xa2-Xa1 高 Ha = Ya2-Ya1
矩形B的宽 Wb = Xb2-Xb1 高 Hb = Yb2-Yb1
矩形A的中心坐标 (Xa3,Ya3) = ( (Xa2+Xa1)/2 ,(Ya2+Ya1)/2 )
矩形B的中心坐标 (Xb3,Yb3) = ( (Xb2+Xb1)/2 ,(Yb2+Yb1)/2 )
所以只要同时满足下面两个式子,就可以说明两个矩形相交。1) | Xb3-Xa3 | <= Wa/2 + Wb/2
2) | Yb3-Ya3 | <= Ha/2 + Hb/2
即:
| Xb2+Xb1-Xa2-Xa1 | <= Xa2-Xa1 + Xb2-Xb1
| Yb2+Yb1-Ya2-Ya1 | <=Y a2-Ya1 + Yb2-Yb1
(2) 对于这个问题,假设两个矩形相交,设相交之后的矩形为C,且矩形C的左上角坐标为(Xc1,Yc1),右下角坐标为(Xc2,Yc2),经过观察上图,很 显然可以得到:
Xc1 = max(Xa1,Xb1)
Yc1 = max(Ya1,Yb1)
Xc2 = min(Xa2,Xb2)
Yc2 = min(Ya2,Yb2)
这样就求出了矩形的相交区域。
另外,注意到在不假设矩形相交的前提下,定义(Xc1,Yc1),(Xc2,Yc2),且Xc1,Yc1,Xc2,Yc2的值由上面四个式子得出。这样, 可以依据Xc1,Yc1,Xc2,Yc2的值来判断矩形相交。
Xc1,Yc1,Xc2,Yc2只要同时满足下面两个式子,就可以说明两个矩形相交。
3) Xc1 <= Xc2
4) Yc1 <= Yc2
即:
max(Xa1,Xb1) <= min(Xa2,Xb2)
max(Ya1,Yb1) <= min(Ya2,Yb2)
相关推荐:
OpenAI账号申诉怎么办?全方位解析解决方案,ai写作免费公众号下载
为什么选择SEO会员服务,让您的网站流量飞速增长,靖边专业网站建设公司
SEO合同:确保您网站优化成功的关键保障,微博营销推广规则最新
ChatGPT出问题?背后的原因与解决方案,夸克ai写作生成
什么是seo网络推广,seo网络推广技术 ,ai写真官方
seo追词是什么,seo词条 ,52580609AI
AI免费生成文章让创作变得轻松自如
ChatGPT连了外网也登不了?如何解决这一问题,重新畅享AI助力!,ai少女大瓜
SEO自从上线后的演变与未来发展趋势,拼多多增加关键词排名
为什么选择老域名注册,打造品牌价值的秘密武器,网站建设服务费用多少
seo用什么法宝,列出5种seo赚钱方式 ,ai怎么更改文档样式
好用的AI写作软件,让创作更高效
seo黑帽是什么,列举几种seo黑帽行为 ,穿老款的ai丢人吗
SEO优化快:如何在短时间内实现网站流量爆发,Lacey0508ai
seo适用于什么领域,seo适用于什么领域中 ,ai智能翻译写作机器人v1.0
“曝光量扩大,助力品牌腾飞的秘密武器”,盐山网站优化免费咨询
文章AI指令提升写作效率的智能助手
AI免费工具:提升效率与创意的秘密武器
pbootcms前端翻译插件-轻松实现网站多语言支持,拓展全球市场,st ai绘画
Chato1免费么?揭开这款AI聊天机器人的神秘面纱,交个朋友ai写作
《“查看更多”背后的秘密:让你的人生更加丰富多彩!》,宁安公司网站建设
GPT-3.5免费吗?揭秘AI智能助手的未来与收费模式,ai 美美
ChatGPT页面打不开怎么办?这些解决方法让你轻松访问AI助手!,分散ai
seo点击工具,seo排名点击软件推荐 ,ai狂躁
文章AI生成标题:让创作更轻松,内容更精彩
优化,让生活与工作更高效-从个人到企业的全面升级,广州百度seo费用
SEO能给企业带来什么价值,seo的影响 ,ai蓝衣美女
SEO排位:如何通过精准策略提升网站排名,获得流量与转化,林海网络推广营销
整理文章的AI:提升写作效率的智能助手
ChatGPT:智能对话开创新时代,ai做渐变直线
ChatGPT桌面版无法加载?快速解决方案及常见问题解析,ai媚眼
Chat免费,让沟通无界限,尽享智能对话时代,ai没办法置顶
seo都有什么问题,seo都有什么问题和答案 ,ai凯旋公主下载
“新热度”:引领潮流的力量,如何趋势的脉搏,浙江通用网站建设特点
SEO经营:助力企业腾飞的秘密武器,靖边百度关键词排名
seo渠道优化是什么,seo渠道推广怎么做 ,ai121333
SEM有哪几个平台?数字营销的多元选择,AI怎么取消移动间距
ChatGPT不能访问,我的学术水平直线下降,泰州大数据ai艾灸价格
SEO优化流程:助力网站快速提升排名的关键策略,1745ai
SEO排序:如何让你的网页在搜索引擎中脱颖而出,平谷抖音seo推广招聘
文章AI排版,让创作更高效的秘密武器
主流seo是什么,seo是什么推广网站 ,AI心理师
SEO建议:如何通过优化提升网站流量,赢得市场竞争,自媒体网站免费推广平台
ChatGPT诞生背景:人工智能如何突破语言的边界,ai辅助市场调研
SEO查:如何用精准的SEO诊断助力网站流量爆发,美团关键词排名怎么补
ChatGPT空白对话:释放创意,开启智能对话的新世界,ai重庆南坪
二次创作的魅力与潜力:创意无限的数字时代,天长外贸网站建设
SEO合作:让你的网站在搜索引擎中脱颖而出,惠州抖音seo策划公司
什么是seo推广找行者SEO,seo推广效果怎么样 ,西宁ai万词霸屏系统
seo网站编辑是做什么,seo网站编辑可在家兼职 ,ai慢直播