基于vc的stl文件读取

基于vc的stl文件读取

ID:33018313

大小:62.02 KB

页数:7页

时间:2019-02-19

基于vc的stl文件读取_第1页
基于vc的stl文件读取_第2页
基于vc的stl文件读取_第3页
基于vc的stl文件读取_第4页
基于vc的stl文件读取_第5页
资源描述:

《基于vc的stl文件读取》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于VC的STL文件读取第23卷第2期VO1.23NO.2湖北工业大学学报JournalofHubeiUniversityofTechnology2008年4月Apr.2008

2、文章编号11003—4684(2008)02—0044—03基于VC的STL文件读取张贞贞,陈定方(1武汉理工大学计算机科学学院,湖北武汉430063;2武汉理工大学物流工程学院,湖北武汉430063)I摘要]就CAD系统较常用文件格式STL的快速读取问题展开讨论,分析了STL两种文件格式的特点,并讨论了冗余数据的消除.[关键词]STL文件;ASCII;二进制[中图分

3、类号]TP391[文献标识码]:ASTL(StereoLithographyinterfacespecifica一tion)文件格式最初出现于1989年美国3DSYS—TEM公司生产的SLA快速成型系统,是一种应用于CAD模型与成型系统之间数据转换的文件格式,现在已为大多数CAD系统和快速成型系统制造商所接受和采用,并且已经在快速成型技术领域中被誉为工业标准.本文旨在研究如何高效率读取STL文件.1STL文件格式的结构STI类似于实体数据模型的表面有限元网格划分.STL模型的数据通过给出组成三角形法向量的3个分量及三角形的3个顶点坐标来实现,

4、STL文件记载了组成实体模型的所有三角形面片的法向量数据和顶点坐标数据,有文本文件(ASCII)和二进制文件(BINARY)两种格式.1.1STL的ASCII文件格式ASCII码格式STL文件逐行给出三角面片的几何信息,每一行以1个或2个关键字开头.在STL文件中的三角面片的信息单元facet是一个带矢量方向的三角面片,STL模型就是由一组这样的三角面片构成.在一个STL文件中,每一个facet由7行数据组成,第1行是三角面片指向实体外部的法向失量数据,第2行说明随后的第3,4,5行数据分别是三角面片的3个顶点信息,沿指向实体外部的法向矢量(

5、第1行数据)方向逆时针排列.ASCII]格式的STL文件结构如下:solidfilenamestlfacetnormalxYzouterloopvertexxYzvertexxYzvertexxYzendloopendfacet〃文件路径及文件名〃三角面片法向量的3个分量值〃三角面片第一个顶点的坐标〃三角面片第二个顶点的坐标〃三角面片第三个顶点的坐标〃第一个三角面片定义完毕eadsoKdfiteuamestt〃整个文件结束1.2STL的二进制文件格式二进制STL文件用固定的字节数来给出三角面片的几何信息.文件的起始80字节是文件头存储零件名,

6、可以放入任何文字信息;紧随着用V个字节的整数来描述实体的三角面片个数,后面的内容就是逐个给出每个三角面片的几何信息.每个三角面片占用固定的50字节,它们依次是3个4字节浮点数,用来描述三角面片的法矢量;3个4字节浮点数,用来描述第1个顶点的坐标;3个4字节浮点数,用来描述第2个顶点的坐标;3个4字节浮点数,用来描述第3个顶点的坐标,每个三角面片的最后2个字节用来描述三角面片的展性信息(包括颜色屈性等)暂时没有用.一个二进制STL文件的大小为三角形面片数乘以50再加上84个字节.比较这2种方式可知,二进制格式文件较小(通常是ASCII码格式的1

7、/5)_3],节省存储空间,但ASCII码格式的文件可读性更强,能被人工识别并被修改.[收稿日期]2007—12-01[作者简介]张贞贞(1982—),女,湖北枣阳人,武汉理工大学硕士研究牛,研究方向:讣算机辅助设计与仿真第23卷第2期张贞贞等基于VC的STL文件读取452STL文件的读取与显示STL文件是由一系列的三角形面片无序排列组合在一起的,没有反映三角形面片Z间的拓扑关系,而且每一个小三角形面片必须与相邻的三角形面片共用2个顶点,每个顶点通常被重用6次左右,文件数据重复很多,造成了STL文件在读取,存储等方面的效率问题•本文研究了如何

8、消除冗余数据并快速读取STL文件,这对于后续三维图形的现实,是一个重要和基本的环节.去除兀余点的实质是,从STL文件中依次取出三角形,通过比较三角形顶点的坐标值,归并重复的点,从而建立一个无重复点的点表,去除兀余点最直接的方法就是比较法.对于新的顶点,读进来时依次对X坐标,y坐标和Z坐标进行比较,且保证所有顶点依次按照X坐标,y坐标和Z坐标排序.这样大大减少了查找范围,提高了排序和插入的效率,采用上述分析方法建立点表,有3个步骤:第一步,按三角形为单元,从文件中读人该三角形的3个顶点,逐点进行比较.第二步,判断该顶点是否已经在点表中存在,1)

9、进行X坐标的比较.a)X坐标相同的顶点不存在,转入第三步.b)X坐标相同的顶点存在,转入2).2)在所有X坐标相同的顶点中,比较y坐标.a)Y坐标相同的顶点不存在,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。