C++ STL自学总结,仅供参考

本文内容,为博主在网上看到资料总结整合而来

一、stl格式简介

.stl文件是在计算机图形应用系统,来表示封闭的面或者体,用来表示三角形网格的一种文件格式。为STereo Lithography的缩写,由3D Systems公司于1987年开发而来,利用三角片离散近似表示三维模型,近年来已经成为快速原型技术领域广泛应用的文件格式和接口标准。

一个stl文件坐标必须是正数,没有比例信息,单位是任意的。

二、stl文件格式

stl文件分为ASCII明码格式和二进制格式。

ASCII格式的stl结构如下:

 1 solid filename.stl//文件路径及文件名字
 2 facet normal  x  y  x//三角片的外法向量
 3  vertex x y z//第一个顶点
 4  vertex x y z//第二个顶点
 5  vertex x y z//第三个顶点
 6  end loop
 7  endfacet
 8  .
 9  .
10  .
11  endsolid

上图为我运行生成的stl文件的一个片段例子

一个三角片包含三角片的外法向量和按右手螺旋规则排列的三个顶点。

因为ASCII格式可能非常大,所以便存在了二进制的格式

二进制格式的stl结构如下:

1 UINT8//文件头
2 UINT32//三角片数量
3 foreach triangle
4 REAL32[3]//法线矢量
5 REAL32[3]//顶点一
6 REAL32[3]//顶点二
7 REAL32[3]//顶点三
8 UINT16//文件属性统计
9 end

三、.stl文件导出及显示工具

这里我利用vtk来写.stl文件,再利用MeshLab来打开文件进行显示

导出代码如下:

 1 // VTK
 2 ......
 3 #include"vtkSTLWriter.h"
 4
 5 int main(int argc, char *argv[])
 6  {//argc表示传入main函数的参数个数;argv0表示程序的名称,并且包含了程雪所在的完整路径
 7
 8             .......
 9         vtkSTLWriter *writer = vtkSTLWriter::New();//Stereo lithography files only contain triangles. If polygons with more than 3 vertices are present, only the first 3 vertices are written.
10         writer->SetInputConnection(skinStripper->GetOutputPort());
11         writer->SetFileName("D:/DATAOUT/poly2procs.stl");
12         writer->Update();
13         writer->Write();
14
15         system("pause");
16
17         return 0;
18 }
时间: 2024-10-16 14:03:26

C++ STL自学总结,仅供参考的相关文章

Ubuntu 12.04 分区方案(仅供参考)

Ubuntu 12.04 分区方案(仅供参考) 总空间大小:50G 目录 建议大小 实际大小 格式 描述 / 10G~20G 10G ext4 根目录 swap <2048M 1G swap 交换空间 /boot 200M左右 100M ext4 Linux的内核及引导系统程序所需要的文件,比如 vmlinuz initrd.img文件都位于这个目录中.在一般情况下,GRUB或LILO系统引导管理器也位于这个目录:启动撞在文件存放位置,如kernels,initrd,grub. /tmp 5G左

四套写入方案(仅供参考)

四套写入方案 第一套:字节流读取写入方案 FileInputStream :字节流方式读取文本文件 FileOutputStream:字节流写入硬盘 第二套:字符流读取写入方案 FileReader:字符流读取文本 FileWriter:字符流写入文本 第三套: BufferedReader:自定义缓存大小 BufferedWriter:写入文本 一般和FileReader和FileWriter结合使用 第四套:可以读取二进制(img图片等 ) DataInputStream:将本地的img加载

信息与通信工程——重要国际学术会议和国际顶级期刊(仅供参考)

一.信息与通信工程的重要国际学术会议 主要包含两类: A类会议:本学科最顶尖级水平的国际会议: B类会议:学术水平较高.组织工作成熟.按一定时间间隔系列性召开的国际会议. A类会议(序号不表示优先顺序) 序号 / 英文名称 / 英文简称 / 中文名称 / 备注 1.IEEE International Conference on Acoustics, Speech and Signal Processing /  ICASAP /     IEEE 声学.语音和信号处理国际会议 2.IEEE I

Unity上一页下一页切换功能实现源码(仅供参考)

在做项目时我们有时需要实现切换上一页下一页图片,切换上一首下一首歌曲等等类似的功能.这里写了个简单的实现源码(仅供参考),要是有更好的方法欢迎提出来,共同进步~ 以切换上一页下一页图片为例: using UnityEngine; using System.Collections; using UnityEngine.UI; public class PanoramaManager : MonoBehaviour { //图片存放数组 Texture2D[] arr; //下一张按钮计数索引 in

开发问题---数据库字段前出现“—”(保存留用,仅供参考)

开发时数据调用往往会用到占位符,然而刚开始使用很容易碰见sql语句在SQLServer中查询时显示"-",如下代码: #region 先判断是否有记录,再确定使用哪条命令 //查询数据库 20140713 commandText = "use zzbjcdzz select *" + "from [T_VillageBasicInfo] " + "where ltrim(rtrim([code]))='{0}' "; //注意

Django开发的简单CMDB系统(仅供参考)

自己基于django开发的一个简单机房机柜CMDB系统,仅供参考.欢迎在下面留言,提出修改意见. 可实现增删改查. 权限未做,很多功能都没做,只做一个最基本的,初学. 前端模板用的inspinia2.5,和jumpserver用的一样的模块,所以看着差不多.模板可自行百度搜索. 放到pycharm或者linux环境下,配置好,运行就可以. domo 登录:http://42.62.6.54:8001/index.html  ,默认用户名hequan,密码123456. 下载链接:http://p

如何有效防止DEDE织梦系统被挂木马安全设置(仅供参考)

尊敬的客户,您好!     感谢广大客户对我司工作的信任和支持!      我司在最近的一个多月内陆续发现多起因 DedeCMS 安全漏洞造成网站被上传恶意脚本的事件,入侵者可利用恶意脚本对外发送大量数据包,严重占用CPU资源与服务器带宽,影响极为恶劣.为保证服务稳定,即日起一旦发现网站存在此类恶意脚本,我们将立即暂停该网站的服务直到问题修复.如果您正在使用 DedeCMS,请立即检查是否已经存在恶意脚本,并更新程序到最新版本或应用相关补丁.     迄今为止,我们发现的恶意脚本文件有    

mysql 千万级数据查询效率实践,分析 mysql查询优化实践--本文只做了一部分,仅供参考

数据量, 1300万的表加上112万的表 注意: 本文只做了部分优化,并不全面,仅供参考, 欢迎指点. 请移步tim查看,因为写的时候在tim写的,粘贴过来截图有问题,就直接上链接了. https://823948977.docs.qq.com/T5e6dBYLoZz?opendocxfrom=tim 文章内容类似截图:

单相变频电源的功能特点--深圳市中港扬盛仅供参考

变频电源的种类分为单相和三相变频,其在电压及功率上都有不同的作用和特点.今天大家分享的是关于中港扬盛的单相变频电源的一些特点: 1.能够有效的抗干扰作用:比如通过Y/△接线的隔离后,就能够阻止一部分谐波的传输:2.能够阻抗变换作用:主要是增加系统阻抗,这样就能使保护装置等容易配合:3.能够稳定系统电压的作用:比如像在启动大负荷设备的时候,能够减少启动时大电流对系统电压的影响:4.能够防止系统接地的作用:当隔离负荷侧发生单相接地时,不会造成整个系统单相接地:5.能够降低短路电流:当负荷侧发生短路事

短信接口与短信平台收费标准----速码云仅供参考

就目前来说短信接口 价格参考 行业收费也基本上没有个固定的标准的价格,都是看各个公司自己的通道套餐跑的量和公司的运营成本结合预算后最终才来制定一套给客户的价格,所以说在短信行业里面短信公司获取的利润是非常小的,除了运营商的短信通道费用之外还有公司的人员成本,公司的场地,服务器和系统等等一切费用,一般几分钱的短信利润大的可能是1-2分钱,如果客户购买得多的话那么几个就会很低,那么利润就有可能是几厘钱了,所以短信公司也是薄利多销,下面就提供一些短信接口行业一般的短信价格给大家参考. 套餐1,比如购买