Algorithm 从矩形并集生成矩形的算法名称? 问题

Algorithm 从矩形并集生成矩形的算法名称? 问题,algorithm,language-agnostic,rectangles,heuristics,Algorithm,Language Agnostic,Rectangles,Heuristics,我有一个例子,我生成轴对齐的矩形,它们可能相互重叠,也可能不重叠——它们通常会重叠。最终,我需要一组不重叠但覆盖(至少)相同区域的矩形。我正在寻找在实时环境中高效在线(在运行时)实现这一点的算法。我有一些想法,但它们可能幼稚或残忍,如果这是一个经过充分研究和解决的问题,我希望避免重新发明轮子 我很难想到其他可能给我起名字的应用程序或隐喻。这类问题/算法解决方案有具体名称吗?有点像“四色定理”,试图给没有相同颜色的相邻区域的贴图上色。从某种意义上说,“四色定理”是一种算法,“给地图的各个区域着色,

我有一个例子,我生成轴对齐的矩形,它们可能相互重叠,也可能不重叠——它们通常会重叠。最终,我需要一组不重叠但覆盖(至少)相同区域的矩形。我正在寻找在实时环境中高效在线(在运行时)实现这一点的算法。我有一些想法,但它们可能幼稚或残忍,如果这是一个经过充分研究和解决的问题,我希望避免重新发明轮子

我很难想到其他可能给我起名字的应用程序或隐喻。这类问题/算法解决方案有具体名称吗?有点像“四色定理”,试图给没有相同颜色的相邻区域的贴图上色。从某种意义上说,“四色定理”是一种算法,“给地图的各个区域着色,使相邻区域不共享颜色”,这就是问题的实例

上下文 特定的应用程序是生成矩形高度场,以便在对象周围发生碰撞,但是非常接近的对象将导致高度场重叠,这将导致碰撞瑕疵。保留现有的矩形并偏爱具有更大面积的矩形更可取,以最小化需要移动/复制到新矩形高度字段中的内存量

示例图像
您可能会发现一类有用的算法称为“平面扫描”或“直线扫描”算法。基本上,您可以按一个轴对对象进行排序,然后按此顺序对其进行处理,以发现所有重要的点/事件,如开始、结束、相交

“我需要一组不重叠但覆盖(至少)相同区域的矩形。”该集必须是输入集的子集吗?否则,您可以只取一个足够大的矩形来覆盖整个输入。我不理解示例图像。我认为这个问题本身有点不明确,听听你对可能有效的算法甚至源代码的想法会有帮助,这样我们就会确信你在这个问题上投入了自己的努力,而不是把它扔到这里让别人来解决:)可能不会,因为我必须生成大量不必要的数据,但这不是我问题的一部分,真的。我正在寻找一个名称或类似的问题,我可以研究,比如在渲染代码时,尝试只重新绘制脏区域或类似区域。有点像“四色定理”,试图给没有相同颜色的相邻区域的贴图上色。我会对这个问题进行澄清。问题是,这个网站是关于编程问题,而不是算法问题。如果你没有源代码,这更多的是一个设计问题,这将是一个更好的适合,或者实际上我正在标记这是移动到康普西,似乎更适合那里。谢谢。我使用了Stackoverflow和其他一些Stackexchange站点,我尽了最大努力使其适合,认为这是最适合我所知道的SOs的站点。