STL 文件读取过程,是对 STL 文件中三角面片法向量值和三角形三个顶点坐标值读取过程。在学习和工作中用到的各类三维造型软件如:PRO-E,UG,3DS 等等,都可以以 STL 数据格式输出,得到 STL 文件后可以读取它内部数据,本文使用 VC6.0 可视化编程软件读取,读取 STL 三角形内部顶点坐标数据算法流程图如图 所示
3d打印STL文件读取
要注意,当判别指定文件是否为STL文档的同时,还要区分该文件是Binary和ASCII码两种形式中的哪一种。首先假设是 Binary 形式,则从文件头偏移 80 个字节后读取一个长整数 n,它应该是 STL 模型包含三角面片的总个数,而保存每个三角形所需物理空间为 50 个字节,可以估算出文件的总大小在 50*n 个字节左右,将这个数与指定文件的实际大小做比较,若相差较大则一定不是 Binary 形式的 STL 文件;如果文件以 ASCII
码形式储存,则可以从中搜索到 solid、facet、normal 等关键词,如果没有,则可以断定其不是 ASCII 码形式的 STL 文件。如果两种情况下均得到否定答案,则指定文件不是STL 文件,应报错并退出程序。
|