加速CGAL中的优化技术

时间:2015-04-24 13:53:03

标签: cgal

我写了一个算法,迭代带有孔的多边形集。算法n2的复杂性。算法检查每个多边形与每个多边形的交集。每个对象包含大约100到1000个点。但是当处理50个物体需要40到200秒时,我感到很害怕。我还需要检查100,000个对象。它在CGAL中是真的吗?

CGAL中是否有任何加速优化技术?

1 个答案:

答案 0 :(得分:2)

对于每个多边形,首先计算多边形的所有边界框。如果要检查多边形的交点,首先要检查的是多边形的边界框是否相交。如果他们不这样做,则多边形不能相交。

然后,为了避免所有潜在交叉点的二次计算,我建议你使用下面的CGAL包来加速计算:Intersecting Sequences of dD Iso-oriented Boxes。该包提供了一个可以快速报告所有相交的边界框的功能。然后,对于每一对,您可以验证两个多边形是否实际相交。