我必须联合许多 boost::polgons,但我的方法似乎不是很高效(> 15 分钟),尤其是在多边形数量较多的情况下(> 2000)。
我将要合并的所有多边形推入多面体,然后加入多面体,请参阅我的代码:
BOOST_FOREACH(polygon, multipolygon)
{
boost::geometry::clear(tmp_union); //tmp_union is a multipolygon
boost::geometry::union_(result, poly, tmp_union);
result = tmp_union;
}
结果可能不会包含很多多边形,因为要合并的大多数多边形都会相交。
有什么方法可以提高性能,比如按特定顺序或完全不同的方法对多边形进行排序?