分组矩形(获取rects的边界框)

时间:2010-12-26 03:49:19

标签: algorithm geometry collision-detection bounding-box

获得一组随机(最多约40个,不是很多)矩形的“最终”边界框有什么好的,快速的方法?最后,我的意思是所有边界框都不与任何其他框相交。

编辑:我的第一个例子是错的。我正在寻找的结果是一组rects,其中每个组在重叠时形成实体几何;他们不是分开的。

因为每次都是随机的,并且矩形计数相对较小,所以使用空间散列的碰撞检测看起来有点过分。有没有办法更有效地做到这一点?

另一个例子:A,B和C有3个.A与B相交,但不与C相交.C与B相交。这些应该被认为是1组,因为它们形成一个几何。

1 个答案:

答案 0 :(得分:0)

您可以比较当前之后的每个矩形。例如。如果你有和数组[A,B,C]

如果比较A,B,则不需要比较B,A或B,B只需比较B,C。如果没有其他改变,这将减少迭代次数。

您可以通过在outter的当前索引处启动内部for循环来完成此操作。