首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java检查两个矩形是否在任意一点重叠

Java检查两个矩形是否在任意一点重叠
EN

Stack Overflow用户
提问于 2014-04-25 20:45:47
回答 8查看 63K关注 0票数 22

我有多个矩形和一个特殊的矩形:选择矩形。我想要检查每个矩形,如果矩形包含至少一个点在选择矩形内。这是一幅清晰的图像:

EN

Stack Overflow用户

发布于 2015-08-19 07:12:52

背景:

矩形只可由其对角线之一定义。

假设第一个矩形的对角线是(x1,y1)到(x2,y2)

另一个矩形的对角线是(x3,y3)到(x4,y4)

程序:

现在,如果这四个条件中的任何一个是正确的,我们可以得出结论,矩形不是重叠的:

  1. x3 > x2 (OR)
  2. y3 > y2 (OR)
  3. x1 > x4 (OR)
  4. y1 > y4

,否则,它们会重叠!

另一种选择是:

矩形在下列情况下重叠

代码语言:javascript
复制
(x1 < x4) && (x3 < x2) && (y1 < y4) && (y3 < y2)

Leetcode的示例解决方案:https://leetcode.com/problems/rectangle-overlap/discuss/468548/Java-check-if-two-rectangles-overlap-at-any-point

票数 69
EN
查看全部 8 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23302698

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档