STL文件的信息和含义

本文介绍了STL文件的本质,它是用于表示三维实体模型表面的离散三角形网格。主要内容包括STL文件的起源、规则(共顶点、取向、充满和取值)、以及如何解析文件结构,包括solid标识、面片信息的记录方式等。
摘要由CSDN通过智能技术生成

STL文件本质为三维实体模型生成的表面网格化信息

也就是很多很多的三角形

如果要描述一个三维空间里面的三角形,我们需要表述哪些信息呢?

三个顶点的坐标和三角形的法向

具体请往下看……

STL文件的起源

        美国3D Systems公司于1987年制定了STL (STereoLithography)文件格式,它以小三角面片为基本单位,离散地近似描述三维实体模型的表面.STL 文件最初应用于快速成形(Rapid Prototyping ,RP)领域 ,并迅速成为RP领域事实上的工业标准;同时,STL 文件也在快速成形之外的各种需要三维实体模型的领域中获得了广泛的应用。

STL文件规则

(1)共顶点规则
每一个三角面片必须与其相邻的每一个面片共两个顶点 ,即一个三角面片的顶点不能落在相邻的任何三角面片的边上;

(2)取向规则
单个面片法向量符合右手法则且其法向量必须指向实体外面;

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

(4)取值规则
每个顶点的坐标值必须为非负,即 STL 文件的实体应该在坐标系的第一象限。

具体来看看怎么回事                      

        这里需要我们使用记事本打开STL文件。有的同学可能会问,为什么我打开之后是一团乱码,原因是你在将模型保存为STL格式文件的时候没有选择ASCII码格式,而是二进制(以solidworks为例,在保存的时候打开“选项”就可以修改保存类型了)

         用记事本打开我们的STL文件,我们接下来简要介绍一下文件的信息和含义。(以这一个模型为例。第一幅图是原模型;第二幅图是用记事本打开的STL文件,这里截取开头的一段作为本文的例子)

 

 

        第一行记录为solid,后面跟的是模型的名字,它的含义是该STL文件是通过某个实体模型生成的。如果是为某面片生成的STL,在这行则会记录为facet。一般情况下非三维的点线面不能生成STL文件,原因是STL文件本质为三维实体模型生成的表面网格化信息。 

        接下来每七行记录一个三角形面片信息:

        第一行:facet narmal,面片法向,后面的三个数字是三维坐标值,数字采用科学计数法

        第二行:outer loop,意思是外部轮廓或者轨迹;

        第三四五行:vertex,顶点,为三角形面片的三个顶点,后面的数字是它们的三维坐标值,数字同样采用科学计数法;

        第六行:endloop,结束该轮廓。

        第七行:endfacet,结束该面片。

        后面都是相同的规律,每7行记录其他不同的三角形面片。

        细心的小朋友们应该发现了,相邻的三角形面片是互相连接的,他们把实体组成封闭的表面(也就是说相邻的两个面片之间会公用一条边和两个顶点) 

参考博客:

https://blog.csdn.net/ytffhew/article/details/84137433

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值