C++ 在八叉树中存储具有共享边的三角形
我试图加载一个STL网格文件,并将其三角形存储在八叉树数据结构中,以便进行一些科学分析(不用于游戏) 如图所示,三角形1存储在八叉树节点NE、SE、SW和NW中,而三角形2存储在八叉树节点NW和SW中。(2d表示,但3d中的情况相同) 将节点NW和SW分开是没有意义的,因为这两个三角形 共享红边。如果我有两个以上的三角形跨越几个单元格,这个问题就会变得更麻烦 那么,用八叉树存储三角形的正确方法是什么C++ 在八叉树中存储具有共享边的三角形,c++,structure,octree,C++,Structure,Octree,我试图加载一个STL网格文件,并将其三角形存储在八叉树数据结构中,以便进行一些科学分析(不用于游戏) 如图所示,三角形1存储在八叉树节点NE、SE、SW和NW中,而三角形2存储在八叉树节点NW和SW中。(2d表示,但3d中的情况相同) 将节点NW和SW分开是没有意义的,因为这两个三角形 共享红边。如果我有两个以上的三角形跨越几个单元格,这个问题就会变得更麻烦 那么,用八叉树存储三角形的正确方法是什么 ps-我不想剪裁三角形。我使用了两种最常用的方法: 在与三角形相交的每个叶节点中存储三角形;
ps-我不想剪裁三角形。我使用了两种最常用的方法:
- 在与三角形相交的每个叶节点中存储三角形;因此,一个三角形可能在多个叶中李>
- 将三角形存储在完全包围三角形的节点(树枝或树叶)中;没有重复的