![]() |
1
1
加速此查询的一个简单方法是构造以下内容
均匀网格
作为预处理步骤的数据结构(通常称为bin):将
根据空间大小和长方体大小的不同,这种方法可能不是很有效,因为你可能很难选择一种好的方法。
使用kd树的查询首先遍历到查询点所在的kd树的叶,然后检查该单元中的本地长方体。 其他空间分区数据结构 可以找到选项 here . 另一个选择是使用 层次包围盒 ,将对象分组到边界体积中,然后将边界体积分组到较大的边界体积中,依此类推…以获取边界体积的层次。它们更适合场景,也更容易处理对象移动的场景,但我认为对于您的设置,空间分区可以很好地工作…无论如何,有关更多详细信息,请参见 this book chapter . |
![]() |
2
2
你进入了“二元空间划分”和“碰撞检测”的领域;本质上,这些想法基本上是将长方体存储到树型结构中,将它们所占的空间划分为整洁的小盒子。在插入树结构的过程中,决定每个长方体所占的“部分空间”。 在八叉树上进行谷歌搜索。 有效地划分三维空间,其中包含的物体是计算机科学的很大一部分;主要用于计算机游戏的开发。有些算法考虑了时间因素,即对象在分区空间之间移动。 |
|
user20003920 · 如何对x y数据进行降采样? 1 年前 |
![]() |
John Marston · 如何创建三个角度相等的三维矢量? 1 年前 |
![]() |
Swike · 如何在matplotlib中为重叠的圆上色? 1 年前 |
![]() |
For · 如何使用c++中的=运算符分别分配复变量的实部和虚部? 1 年前 |
|
ryanx · html中的长lat标识符 2 年前 |
|
hosoo · 如何在python中找到平面方程 2 年前 |
|
Georgia Nissen · 检查两个列表的圆重叠 2 年前 |
|
wzl · 如何使用POI绘制圆(而不是椭圆) 2 年前 |