弗雷德的答案既简洁又正确.
我更喜欢:
bool overlap = !(e1 < s2 || e2 < s1);
Run Code Online (Sandbox Code Playgroud)
我认为这更清楚,但这是一个非常小的差异.
转换为英语:
如果两个都没有在另一个开始之前结束,
这类似于重叠矩形问题.编写该测试有两种好方法.它们对应于以下陈述:
如果两个矩形的左边缘位于另一个边缘的左边缘,则两个矩形重叠,两个矩形的顶边缘位于另一个边缘的上边缘之上.
如果两个矩形都不在左侧或在另一个上方,则两个矩形重叠.
| 归档时间: |
|
| 查看次数: |
2211 次 |
| 最近记录: |