随着时间的推移,我在太空中有很多点。它们在空间中移动,充满了AABB边界框(包括嵌套框,BB的数量少于点)我想知道是否有一个数据结构可以帮助组织点进入边界框检测。
目前我想到了一个基于盒子中心的kd树来对点移动进行人工神经网络,盒子交叉/嵌套层次结构(谁在其中/旁边)用于盒子检测。
然而,对于这么多点来说这是缓慢的,所以我想知道这种情况下是否有一些专门的算法/数据结构?一种同时对多个点进行查询的方法吗?
答案 0 :(得分:0)
我建议使用一些如果四叉树。 基本四叉树已经非常好用于快速删除/插入,但有一些特殊的变体,更好:
不幸的是,我不知道Samet的四叉树的任何免费实现。对于PH-Tree,您可以在上面给出的链接和C ++版本here上找到Java版本。您还可以查看我的index collection以获取各种多维索引的Java实现。