给出元组列表(包括x,y,宽度,高度,其中四个值在二维协调中定义矩形)。 目标是在原始列表中检查一个矩形是否在另一个矩形内(如果是,只取较小的一个,较大的一个被丢弃)算法问题:如何确定矩形是在另一个矩形内?
0
A
回答
1
最明显的解决方案,如果不是太慢,是定义为rect1.contains(rect2)
:
rect1.x <= rect2.x && rect1.y <= rect2.y && rect1.x + rect1.width >= rect2.x + rect2.width && rect1.y + rect1.height >= rect2.y + rect2.height
,然后检查每个矩形列表,看它是否包含任何他人。 (不检查其对自身,尽管!)
0
相关问题
- 1. 另一个矩形内的矩形
- 2. Flash AS3:如何在另一个矩形内调整矩形?
- 3. 将矩形均匀分布在另一个矩形内所需的算法
- 4. 确定一个矩形是否被另一组矩形完全覆盖所需的算法
- 5. 如何测试一个矩形是否在另一个矩形中?
- 6. 算法从坐标确定矩形
- 7. 如何确定矩形
- 8. 将矩形位置绑定到另一个矩形
- 9. 在另一个矩形内创建一个形状
- 10. 发现,一个矩形触及另一个矩形
- 11. 算法 - 打矩形的检测旋转矩形内
- 12. 如何确定一个矩形是否与任何其他矩形相交的形式C#不是XNA
- 13. 在矩形内计算六边形?
- 14. 如何确定一系列点(或多边形)是否在矩形区域内?
- 15. iPhone:检测一个矩形的任何点在另一个矩形
- 16. 如何在矩形中创建矩形?
- 17. 问题在绘制矩形
- 18. 确定正方形和矩形之间关系的算法
- 19. 如何给定的矩形内识别子三角形在该矩形
- 20. 如何确定广场是否在矩形内?
- 21. 确定由一组矩形元素定义的区域是否为矩形
- 22. 算法需要,以确定是否一个矩形完全被给定一组多边形P和矩形区域A一组多边形
- 23. 给出一个矩形列表,如何找到完全包含在其他矩形内的所有矩形?
- 24. 如何在另一个矩形内将一个矩形缩放为可能的最大尺寸?
- 25. 给定两个矩形,返回表示重叠区域的另一个矩形
- 26. 如何确定一个多边形是否在另一个内?
- 27. 矩形内最大的空矩形
- 28. 钳矩形内较大的矩形
- 29. 包装矩形算法
- 30. 矩形近似算法
是... *任何*'rectangle'类,任何你找到它的地方,都应该配备基本的基元,如重叠或遏制。通过一切手段,Hypnoz应该*“找到一个*并且只是使用它”。 ###在实施你的建议时,代码必须记住忽略测试以查看矩形是否与自身重叠!* *(在那里,是否......)* –
我不认为代码是正确的。如果'rect2.x == rect1.x + rect1.width - 1'和'rect2.width == 2',那么您的条件返回true,但不包含rect2(跨越右边框)。 –
您需要确保'rect2.x + rect2.width <= rect1.x + rect1.width'。对于y维度也是类似的。 –