问:如何判断两个矩形是否重叠?

当满足以下条件时,两个矩形不是重叠的

1.一个矩形在另一个的上面

2.一个矩形在另一个的左边

一个矩形可以被表示为两个点,分别是左上和右下。

我们定义下面四个变量来表示:

1. l1 第一个矩形的左上

2. r1 第一个矩形的右下

3. l2 第二个矩形的左上

4. r2 第二个矩形的右下

所以矩形不重叠的条件是

l1.x > r2.x || l2.x > l1.x   // 一个在另一个的左边

l1.y < r2.y || l2.y < r1.y  // 一个在另一个的下面

剩下的条件都是重叠

Two rectangles do not overlap if one of the following conditions is true.

1) One rectangle is above top edge of other rectangle.

2) One rectangle is on left side of left edge of other rectangle.

Note that a rectangle can be represented by two coordinates, top left and bottom right. So mainly we are given following four coordinates.

l1: Top Left coordinate of first rectangle.

r1: Bottom Right coordinate of first rectangle.

l2: Top Left coordinate of second rectangle.

r2: Bottom Right coordinate of second rectangle.

classPoint{intx,y;};// Returns true if two rectangles (l1, r1) and (l2, r2) overlapbool doOverlap(Pointl1,Pointr1,Pointl2,Pointr2){// If one rectangle is on left side of otherif(l1.x >r2.x ||l2.x >r1.x)returnfalse;// If one rectangle is above otherif(l1.y

java 矩形重叠问题_两个矩形重叠的问题相关推荐

  1. C语言 有两个矩形 求重叠面积,计算两个矩形重叠面积的简单方法

    实验需要,需要计算两个矩形重叠面积 想来想去觉得挺复杂,搜了下,看见一个超给力的方法 这里分享下: function D = DecideOberlap(Reframe,GTframe) x1 = R ...

  2. python计算两个矩形的重叠_python计算两个矩形框重合百分比的实例

    python计算两个矩形框重合百分比的实例 如下所示: def mat_inter(box1,box2): # 判断两个矩形是否相交 # box=(xA,yA,xB,yB) x01, y01, x02 ...

  3. java code review 工具_两款好用的代码Review工具 | 学步园

    最近团队内部呼吁代码质量的声音越来越高,项目组引入了代码Review机制.上次我由于不了解主站URL替换的规则,险些造成客户端图片读取错误,而代码Review则有助于帮我们发现代码潜在的问题. 主讲的 ...

  4. java 双声道音频_两分钟双声道,16位采样精度,22.05KHz采样频率声音的不压缩数据量为...

    [单选题]去试试生生世世生生世世搜索 [单选题]( ) 是当轿厢或对重超过下极限位置时,用来吸收轿厢或对重装置所产生动能的制停安全装置. [简答题]请写出JFrame.Frame以及Window这三个 ...

  5. java求圆弧切线_两个圆的公切线

    两个圆的公切线 圆上任意一点拥有唯一的圆心角 struct circle{ Point p; double r; // 通过圆心角求圆上某一点 Point point(double a){ retur ...

  6. Java多道程序坐标图_两道java基础题,每天赶任务,多忘了怎么写这种代码。

    题目: 输入一整数,找出大于该整数的最小完美数,找到返回该数,找不到返回0. 完美数:一个数如果恰好除与各位书的和余22,这个数就成为"完美数". 审题 再看一遍,整数应该包括负数 ...

  7. 如何判断两个矩形相交

    假定矩形是用一对点表达的(minx, miny) (maxx, maxy),那么两个矩形        rect1{(minx1, miny1)(maxx1, maxy1)}        rect2 ...

  8. Java黑皮书课后题第3章:**3.28(几何:两个矩形)编写一个程序,提示用户输入两个矩形中心的x坐标和y坐标以及矩形的宽度和高度,然后判断第二个矩形是在第一个矩形内,还是和第一个矩形重叠

    **3.28(几何:两个矩形)编写一个程序,提示用户输入两个矩形中心的x坐标和y坐标以及矩形的宽度和高度,然后判断第二个矩形是在第一个矩形内,还是和第一个矩形重叠 题目 题目概述 运行示例 破题 代码 ...

  9. java判断两个矩形是否相交_判断矩形相交以及求出相交的区域

    问题:给定两个矩形A和B,矩形A的左上角坐标为(Xa1,Ya1),右下角坐标为(Xa2,Ya2),矩形B的左上角坐标为(Xb1,Yb1),右下角 坐标为(Xb2,Yb2). (1)设计一个算法,确定两 ...

最新文章

  1. wingide的使用方法积累
  2. linux标准I/O——标准I/O介绍
  3. Oreo授权系统V1.0.6公益开源版本
  4. SpringBoot核心注解@SpringBootApplication一二
  5. windows winrar 指令_Windows上WinRAR.exe命令行参数说明(转载) .
  6. CHM乱码解决方案!
  7. 网络扫描实验(win10使用nmap,X-Scan工具使用)
  8. 【食游香港6】全港最正宗奶茶、中环白领最爱餐蛋茄牛肉面、宵夜小食
  9. iOS 【iOS-切换控制器的手段及异同】
  10. 操作系统的程序内存结构 —— data和bss为什么需要分开,各自的作用
  11. android系统版本命名,安卓历代系统版本命名回顾 你吃过哪些甜点?
  12. 泛泛而谈的渲染学习记录(一)—— 描边中的轮廓边缘
  13. Kettle链接MySQL报错:Driver class 'org.gjt.mm.mysql.Driver' could not be found
  14. 爬虫(三):爬取西刺高匿代理
  15. android su 程序,android 开发 制作自己的su
  16. 【C语言】for循环常见问题
  17. 微软谷歌苹果耳机大战 智能竞赛的又一战场
  18. 《时代》2022年全球最具影响力100家公司榜单公布,防弹少年团、亚马逊新CEO登上封面 | 美通社头条...
  19. 据说比谷哥牛的搜索引擎
  20. 《Undocumented Windows 2000 Secrets》翻译 --- 第一章(2)

热门文章

  1. java 二维卡尔曼滤波_卡尔曼滤波(Kalman filtering)算法学习小记
  2. C语言ATD1SC,2020-10-13_ATD(模数转换)模块介绍
  3. 数字货币交易所源码_(数字货币交易所科普)开发数字货币交易所应该注意哪些问题...
  4. Linux LXR 网站
  5. python 指针_python的指针
  6. gns3中两个路由器分别连接主机然后分析ip数据转发报文arp协议_TCP/IP协议知识总结...
  7. fsimage文件丢失_Fsimage 与 EditLog定义及合并过程
  8. avaya http文件服务器,avaya 通讯服务器配置
  9. MySQL非分片字段查询_Mycat从入门到放弃-Go语言中文社区
  10. mask属性是css3的吗_CSS3 mask 遮罩的具体使用方法