怎么修复3d模型STL文件格式的规则和缺陷?

qianyuan   2016-12-13 16:12:34

stl格式的模型文件是普遍3D打印机都支持的,那么修复3d模型STL文件格式的规则和缺陷呢?


STL文件格式的规则

  

(1)共顶点规则。每一个三角形平面必须与每个相邻的小三角形平面共用两个顶点,也就是说,一个三角形平面的顶点不能落在相邻的任何一个小三角形平面的边上

如何修复三维打印模型STL文件格式的规则和缺陷

  

违反共顶点规则的错误

  

(2)取向规则。对于每一个小三角形平面,其法向量必须向外,3个顶点连成的矢量方向按照逆时针方向的顺序确定(右手法则),而且,对于相邻的小三角形平面,不能出现取向矛盾,如图所示。

(3)取值规则。每个小三角形平面的顶点坐标值必须是正值,零和负值是错误的。

  

(4)充满规则。在三维模型的所有表面上,必须布满小三角形面片,不得有任何遗漏

  

STL文件存在的问题

  

由于STL文件不包含其拓朴关系的数据,加上STL文件格式本身以及从CAD软件到STL文件格式转换过程造成的问题,所产生的STL文件难免有少量的缺陷。其中,最常见的缺陷有:

  

(1)存在缝隙,即三角形面片的丢失。对于大曲率的曲面相交部分,三角化时就会产生这种错误,如图3所示。在显示的STL格式模型上,会有错误的裂缝或孔洞(其中无三角形),违反了充满规则。此时,应在这些裂缝或孔沿处增补若干小三角形面片,从而消除这种错误。

 

三角形之间的缝隙示意图

  

(2)畸变,即三角形面片的所有边都共线。这种缺陷通常发生在从三维实体到STL文件的转换算法上。由于采用在其相交线处向不同实体产生三角形面片,就会导致相交线处的三角形面片的畸变。

  

(3)三角形面片的重叠。面片的重叠主要是由于在三角化面片时数值的圆整误差所产生的。由于三角形的顶点在3D空间中是以浮点数表示的,而不是整数。如果圆整误差范围较大,就会导致面片的重叠。

  

(4)歧义的拓朴关系。按照共顶点规则,在任一边上,仅存在两个三角形共边。若存在两个以上的三角形共此边,就产生了歧义的拓朴关系。这些问题可能发生在三角化具有尖角的平面、不同实体的相交部分或生成STL文件

  

时控制参数的误差上。由于STL文件的这种缺陷,必须事先对STL文件的模型数据的有效性进行检查,以保证用于快速成形系统的STL文件的有效性。否则,具有缺陷的STL文件就会导致快速成形系统加工时的许多问题,如原型的几何失真等,严重时会导致死机。

  

一般的解决方法

  

由于STL文件存在以上的缺陷与不足,就需要有一个软件来修改STL文件,比如国内的AFS公司和美国的3D System公司就有此类软件。但要想找出STL文件中的问题并加以修改并非轻而易举的,也不是所有的缺陷都能修复的。传统的解决方法是使用(或开发)一个STL纠错程序,将STL文件中的错误排除,生成新的STL文件,再进行切片(有些系统将纠错、切片做在一个模块里,其原理仍是一样的)。但由于三维信息的复杂性,多数算法目前并不能将STL文件所描述的三维拓朴信息还原出一个整体、全局意义上的实体信息模型,无法像人一样对三维实体有一个空间上的认识,因而纠错只能停留在纠正简单的错误上,而无法对复杂错误进行自动修复,只能标出错误点的位置,依赖人手工进行一个个三角形的添加、删除工作,这通常需要一到数天的时间,不仅枯燥、麻烦,并且也失去了快速成形的意义。由于STL文件的缺陷会导致切片程序上的许多错误,有时会使切片过程很困难,于是许多学者针对STL文件的缺陷提出容错的切片算法。

0

1681 0

发表评论

登陆后参与评论