我正在尝试加载STL网格文件并将其三角形存储在八叉树数据结构中,以进行一些科学分析(不适用于游戏)。
如图像所示,三角形1存储在八叉树节点NE,SE,SW和NW中,而三角形2存储在八叉树节点NW和SW中。 (2d表示,但它在3d中是相同的故事)。
从两个三角形开始划分节点NW和SW是没有意义的 分享红色边缘。如果我有两个以上的三角形跨越几个单元格,这个问题会变得更麻烦。
那么,在八叉树中存储三角形的正确方法是什么?
ps-我不想剪辑三角形。
答案 0 :(得分:0)
我使用了两种最常用的方法:
第一种方法对粗糙,轴对齐,物体形状的估计很有用 - 解决紧密堆积问题。基本上它是不均匀的体素化。第二种方法非常适合碰撞检测。每个三角形都需要与同一节点及其子节点中的其他三角形相撞。第二种方法产生了非常轻量级的实现(您可以将链接列表的下一个指针直接添加到三角形)。