STL格式的文件,是VTK支持的各种类型的文件之一。

STL(Stereolithography)文件,有时被称为“标准三角语言”或“标准曲面细分语言”,由3D Systems于1987年创建,并且已被广泛用作全行业3D打印机模型的标准文件。这些文件是从原生CAD文件导出的,并使用三维笛卡尔坐标系“[维基百科,”STL(文件)描述三角形单位法线和顶点(按右手规则排序)的原始非结构化三角形曲面 格式)“,2019年]。 简而言之,STL是将CAD模型近似为一组三角形,将样条(如样条曲线,p线,弧线,挤出和扫掠)转换为三角形简单和复合材料。

需要注意以下事项:二进制/ ASCII:虽然两种格式的编码之间存在很大差异,但基本上二进制和ASCII在功能上是相似的,但需要注意的是,二进制文件往往比大多数切片软件更小,处理能力更低。 除非特别要求,否则Binary通常是首选,因为文件较小。单位:STL文件的定义不包括度量单位。 导出模型时,请注意本机CAD的单位以及打印机/切片软件的预期单位。 大多数切片软件都有单元配置,但默认情况下大多数常见部署都需要毫米(mm)。分辨率:这将是CAD软件包之间最多样化的属性,但一般来说,目标是确保最小公差/偏差小于3D打印机能够生成的最精细特征。 例如,如果3D打印机可以产生的最佳分辨率为100微米,则STL的直径,角度,镶嵌部分等的公差应在100微米以内。

#include <iostream>
#include <vtkSmartPointer.h>
#include <vtkActor.h>
#include <vtkRenderer.h>
#include <vtkRenderWindow.h>
#include <vtkPolyDataMapper.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkSTLReader.h>
#include <vtkProperty.h>
#include <vtkInteractorStyleTrackballCamera.h>#define vtkSPtr vtkSmartPointer
#define vtkSPtrNew(Var, Type) vtkSPtr<Type> Var = vtkSPtr<Type>::New();
#ifndef INITIAL_OPENGL
#define INITIAL_OPENGL
#include <vtkAutoInit.h>
VTK_MODULE_INIT(vtkRenderingOpenGL2)
VTK_MODULE_INIT(vtkInteractionStyle)
//VTK_MODULE_INIT(vtkRenderingContextOpenGL2)
//VTK_MODULE_INIT(vtkRenderingFreeType)
#endif
using namespace std;int main()
{vtkSPtrNew(reader, vtkSTLReader);      reader->SetFileName(D:\\bird.stl);   // 读取STLreader->Update();vtkSPtrNew(mapper, vtkPolyDataMapper);    //渲染的多边形几何数据,派生自vtkMappermapper->SetInputConnection(reader->GetOutputPort());  //管线链接,将读取的数据给mappervtkSPtrNew(actor, vtkActor);        //派生自vtkProp类,对渲染场景中数据的可视化表达。(不太好理解,可以理解英文字面意思,就是具体显示出来的内容(演员))//vtkActor负责场景中的几何数据,vtkVolume负责场景中的体数据(有的网站上自动翻译给翻译成音量^_^)actor->SetMapper(mapper);actor->GetProperty()->SetEdgeColor(255, 241, 0); // 显示边框颜色
//    actor->GetProperty()->SetEdgeVisibility(1);     // 显示边框vtkSPtrNew(ren1, vtkRenderer);       //负责管理场景渲染过程的类ren1->AddActor(actor);ren1->SetBackground(0.1, 0.2, 0.4);      //背景色vtkSPtrNew(renWin, vtkRenderWindow);     //vtkRenderWindow及其子类,负责管理本地计算机系统中窗口创建和渲染过程renWin->AddRenderer(ren1);vtkSPtrNew(iren, vtkRenderWindowInteractor);   //提供平台独立的响应鼠标、键盘和时钟事件的交互机制,交给vtkInteractorStyle类型去处理iren->SetRenderWindow(renWin);vtkSPtrNew(style, vtkInteractorStyleTrackballCamera);  //3D场景交互器,有多种style,可以看看其他类型。iren->SetInteractorStyle(style);renWin->SetSize(600, 600);        //设置窗口大小renWin->Render();iren->Start();return 0;
}

学习VTK9笔记(三)打开stl文件相关推荐

  1. 深度学习入门教程UFLDL学习实验笔记三:主成分分析PCA与白化whitening

     深度学习入门教程UFLDL学习实验笔记三:主成分分析PCA与白化whitening 主成分分析与白化是在做深度学习训练时最常见的两种预处理的方法,主成分分析是一种我们用的很多的降维的一种手段,通 ...

  2. stl如果开o2_打开STL文件的四种最佳方法

    下载通用文件查看器(File Magic) 安装可选产品 - File Magic (Solvusoft) | EULA | Privacy Policy | Terms | Uninstall 选择 ...

  3. MATLAB笔记:打开数据文件的三种方法+读取数据文件的两种方法+保存数据文件的两种方法

    1.打开数据文件 1.1 直接打开文件 PATHNAME = 'C:\Users\s55\Desktop\dat'; FILENAME = '\data_1.dat'; str0=strcat(PAT ...

  4. 打开stl文件_介绍一种修复、查看以及打印STL三维模型文件的工具

    slic3r是一种3D打印切片软件,这里可以帮助大家用于协助修复STL文件,并能帮助设定3D打印选项的小工具,下载后免安装直接可以用.官方网站点击左下角查看原文.我们也知道3D打印爱好者必不可少的也是 ...

  5. RPG学习笔记三(PF文件导入,RPGLE文件导出)

    在运行时打入cmd命令,进入Dos状态下. >ftp >open IP(AS400的IP地址) >输入用户名 >输入密码 >quote type b 1 >put ...

  6. 深度学习实战笔记三:编码器、解码器+mnist+kears

    对matplotlib的解释 import matplotlib.pyplot as plt import numpy as np a = [[1,2]] a = np.array(a) c = a[ ...

  7. Linux常用指令学习(篇三):文件搜索命令

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.文件搜索命令:find 1. 根据文件名搜索 -name 2. 指定文件大小搜索 -size 3. 根据所有者搜索 ...

  8. Python学习基础笔记三十二——正则表达式

    官方定义:正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特殊字符.及这些特定字符的组合,组成一个"规则字符串",这个规则字符串用来表达对字符串的一种过滤逻辑. 1. ...

  9. 系统学习Pytorch笔记三:Pytorch数据读取机制(DataLoader)与图像预处理模块(transforms)

    Pytorch官方英文文档:https://pytorch.org/docs/stable/torch.html? Pytorch中文文档:https://pytorch-cn.readthedocs ...

最新文章

  1. TCP流嗅探和连接跟踪工具tcpick
  2. golang ide 简介
  3. Php的基本语法学习
  4. SpringMVC中@ResponseBody和@RequestBody的使用
  5. rsa php openssl,openssl rsa 使用简介
  6. php 向公众号发送消息,微信公众号之主动给用户发送消息功能
  7. Double值保留两位小数的四种方法
  8. 介绍10款常用的JAVA测试工具
  9. visio 2003 for enterprice architects 不需要安装VS2005,直接安装的方法
  10. 洛谷1123 取数游戏
  11. chainmaker操作笔记
  12. Linux安装yum过程(超详细!)
  13. 怎么看电脑支持多少兆网速_电脑网速怎么看(电脑怎么看网速多少兆)
  14. SylixOS原子量操作
  15. magick++配置
  16. afrog 发布新版 Release 1.3.6 漫天星辰
  17. linux环境启动tomcat成功后,访问链接一直在转圈
  18. linux drm 内存管理,linux DRM GEM 笔记
  19. Python下数值型与字符型类别变量独热编码(One-hot Encoding)实现
  20. ERP和MES、QAS以及APS在制造企业信息化的了解

热门文章

  1. 《用户至上:用户研究方法与实践(原书第2版)》一1.1 什么是用户体验
  2. 【Hack The Box】linux练习-- Blunder
  3. eos代码阅读笔记09- 石墨烯架构Graphene
  4. pytorch b站练习-5
  5. VS2005 设置DLL程序无入口点
  6. 好的电子书资源——原创力文档
  7. python 小工具 之 房贷计算器
  8. [转载]Qt涂鸦板程序图文详细教程..Qt涂鸦板程序图文详
  9. 美团数据分析岗面试题+解题思路
  10. 万能页面加载loading