使用C++(和Qt),我需要处理大量的3D坐标.
具体来说,当我收到一个3D坐标(由3个双打组成)时,我需要检查列表是否已经处理了这个坐标.如果没有,那么我处理它并将其添加到列表(或容器).
坐标量可能变得非常大,因此我需要将处理过的坐标存储在容器中,以确保检查容器中是否已经包含3D坐标的速度很快.
我正在考虑使用地图地图的地图,存储x坐标,然后是y坐标,然后存储z坐标,但是这使得使用起来非常繁琐,所以我实际上希望有更好的方法来这是我无法想到的.
加速此类处理的最简单方法可能是将已经处理的点存储在八叉树中.检查重复将接近对数.
此外,请确保通过检查点之间的距离而不是坐标的相等性来容忍舍入误差.