沈阳3D打印

沈阳3D打印

当前位置: 沈阳3D打印 > 企业新闻 > 3D打印基础之STL文件拓扑重构
企业新闻

3D打印基础之STL文件拓扑重构

更新时间: 2024-12-19 16:50:00  查看次数: 106    
STL 文件要进行拓扑重构,得做两件事,一是去掉那些多余的点,二是建立几何拓扑关系。去掉多余数据,其实就是把顶点聚合起来。做法是把三角面片的顶点坐标都查看一遍,看看新的顶点是不是已经被存过了,保证每个顶点只被记录一次,不出现重复存储的情况。
沈阳3D打印
建立几何拓扑关系呢,就是利用已经弄好的合理的数据结构,这样就能很快地找到文件里的各个元素。整个拓扑重构的过程,就是先读取三角面片,弄出一个没有多余顶点的点表,把各个点、线、面相互之间的位置关系保存好,放在拓扑结构里。具体来说,就是把所有三角形面片的顶点坐标都查看一遍,把顶点数据一个一个地比较,把坐标相同的顶点聚合在一起,这样就能建立一个没有重复顶点坐标数据的点表。详细的步骤是这样的:先读取 STL 文件里三角面片的顶点坐标,看看点表里面是不是已经有这个顶点的 x 坐标了,如果有,接着看它的 y 坐标有没有,如果没有,就把这个点存到点表里,同样的道理,再依次判断 y、z 坐标,一直到把所有的点都判断完,这样建立的点表里面就不会有重复的顶点了。
沈阳3D打印
STL 文件拓扑重构,本质上就是找到多余的数据,然后把重复的顶点去掉。因为直接去读取搜寻会花很多时间,所以很多学者都想出了不同的办法,大多数是引入一些数据结构,让搜寻顶点的速度变快。我查找了国内外的很多文献,综合考虑了算法花费的时间和复杂程度,决定在这篇文章里用哈希表来完成 STL 模型的拓扑重构。哈希表是一种通过关键字就能很快查找的数据结构,它其实就是一个顺序表。这里面有个叫哈希函数的映射函数,还有存放记录的哈希表。建立哈希表主要有两个关键的步骤:一个是设计哈希函数,另一个是解决哈希冲突。