将点矢量分成两个空格

时间:2016-07-04 16:05:55

标签: stl cgal

我使用CGAL将数百万个3D点的内存映射文件作为STL向量。给定一个将数据集分成大致相等部分的任意平面,我想对数据集进行排序,使得所有内部点在向量中是连续的,同样也是外部点。然后需要将此过程重复到任意深度,从而创建非轴对齐的BSP树。

由于数据集的大小,我希望尽可能地做到这一点。我有一个谓词仿函数,我用它来创建一个filtered_iterator,但当然不会对点进行排序,只是跳过不匹配的点。所以我可以创建第二个向量并将已排序的点复制到其中,并重新使用原始向量循环方式,但我想尽可能避免使用,如果只是为了保持标记每个空格的开头和结尾的迭代器。

1 个答案:

答案 0 :(得分:0)

当然,通过调用问题众神,我几乎在发布后立即收到了他们的直接联系!

我只是对STL算法partition视而不见,这正是我所需要的。