65.9K
CodeProject 正在变化。 阅读更多。
Home

StL 数据文件查看器

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.87/5 (40投票s)

2003年3月6日

CPOL

2分钟阅读

viewsIcon

668565

downloadIcon

14816

一个简单的立体光刻(StereoLithography)数据文件查看器。

Sample Image - StLViewer.jpg

引言

立体光刻(StL) 是一种广泛应用于CAD/CAM、快速原型制作等领域的技术。其原理是任何表面或实体在商业CAD软件包中建模后,都会被导出为StL格式的数据,用于数据交换。这些数据由三角面片组成,近似于实体的表面。不导出拓扑或几何信息。表面被细分为小的三角形。对于曲面,近似使用弦切偏差来平滑表面。所需的平滑度越高,细分产生的三角形就越小,数据文件的大小也就越大。现在,除了三角形之外,还会生成它们的法线。数据以ASCII和二进制格式写入。ASCII数据以如下方式写入

facet normal  0.000000e+000 -1.000000e+000  0.000000e+000
   outer loop
     vertex -1.499999e+002 -1.000000e+002  0.000000e+000
     vertex -1.500000e+002 -1.000000e+002  0.000000e+000
     vertex -1.500000e+002 -1.000000e+002 -5.000000e+001
   endloop
 endfacet

facet normal 告诉您法线的三个分量,然后是三角形的三个顶点,由语句括起来。

facet normal  0.000000e+000 -1.000000e+000  0.000000e+000

endfacet

因此,所有三角形都一个接一个地写入。然后可以将这些数据用作生成快速原型模型以及NC刀具路径生成的输入。法线数据有助于计算刀具偏移量等。

在这里,为了在OpenGL查看器中显示数据,我编写了读取数据并使用glBegin(GL_TRIANGLES)和法线进行光照显示每个三角形的代码。查看器和几何体编码与我之前的项目CadSurf 相同。您可以将许多StL(仅ASCII)文件读取到查看器中,缩放、平移、旋转视图,选择对象,更改颜色和材质等属性。查看器提供面向对象的上下文菜单。也就是说,当您在视图中单击右键且没有活动选择时,您将获得一个用于设置查看器属性的上下文菜单,而当选择StL对象时,您将获得一个用于对象属性的菜单。项目的数据文件夹中也提供了一些示例StL数据。

请告诉我您的意见。谢谢。

© . All rights reserved.