标签: java algorithm 3d jmonkeyengine
我正在试验jmonkeyengine,并且我遇到了返回属于边界体积内的所有点(来自预定义的大点集)的需要。这很容易创建音量本身,但我想得到所有包含点的地图。
社区有什么想法吗?如果需要,我很乐意使用其他库,由于社区支持和BoundingCapsule形状,我被jmonkey所吸引。
编辑:我已经考虑过迭代我的所有点并使用.contains,遗憾的是这个空间包含数十万个点和相对微小的胶囊。当然必须有一些我缺少的聪明的数学。
答案 0 :(得分:0)
如果你只需要这样做一次,你就不能比针对边界体积检查每个点更好。
如果需要执行多个查询,可以通过设置空间查询结构来提高查询的性能。请注意,您首先需要花费时间和内存来构建和维护您的查询结构,但如果您可以通过大量查询分摊费用,那就没问题了。
根据您的需要,您可能希望使用grid,quadtree,K-d tree或R-tree来加速空间查询。以上并不是加速结构的详尽列表,但它包含了一些最常用的选项。