STLtoSVG,and SVG to Bmp
先用这两个工具:
Slic3R或者Skeinforge:这个两个工具的作用就是把STL文件切片为叠加的矢量图(SVG格式)
因为SVG是分层的,一层一层的把每层都转换成一张Bmp文件
听说ImageMagick和Inkscape都可以转换
Slic3r-console的命令行用这个:
Slic3r-console --layer-height 0.25 --output D:\test.svg --export-svg "C:\test.stl"
第一个参数0.25是切片的厚度0.25mm(毫米)。后面的参数一目了然了,导出的格式的svg的。如果不指定,默认为G-code格式。
Slic3R源码当中的stl.h文件是STL文件相关数据的描述和对STL文件操作的接口(stl_open(),stl_close()等函数)。这接口的上层还封装了C++的类,以TriangleMesh类来封装ReadStlFile。ReadStlFile调用了stl_open()函数。ReadStlFile函数被更上层的Perl语言来调用。关于C/C++模块的SVG类是用来调试的时候产生作用的,不能运用到项目中。关于Slic3R中的SVG文件导出部分,是用Perl语言的Print模块的export_svg函数来完成全部写入的功能的。
B9Creator项目(项目工程源码在GitHub上)也可以把STL转换成SVG。B9是用Qt框架来开发的。Qt调用了底层的分析STL文件的算法。 B9ModelLoader类封装了STL文件解析的相关函数。B9通过AddModel来加载STL,然后保存为.b9l的文本文件,里面有相关stl文件路径和其他相关参数的描述,然后再根据b9l里面的信息进行slice,slice为slc文件,然后通过edit模块,导入slc文件,然后再导出一系列的bmp格式文件。
************************************************************************************************
注意:以上我倒腾来倒腾过去,其实最终目的是为了把stl文件切片成一系列的层,然后把每层转换成对应的位图(bmp)。所以我放弃了用Slic3R,因为它引入了Perl,引入了复杂。Perl代码以乱而闻名,所以我学习成本有点大了。 我最后还是用B9Creator来实现的,把B9的有用的类分离出来供自己调用,也折腾了好久,现在整个实现项目都传到了我的github上了,地址为:
https://github.com/CaltechFlame/stl2bmps
References:
http://stackoverflow.com/questions/9853325/how-to-convert-a-svg-to-a-png-with-image-magick
http://manual.slic3r.org/SVGOutput.html
http://manual.slic3r.org/CommandLineUsage.html
http://graphicdesign.stackexchange.com/questions/8021/how-to-batch-export-layers-of-inkscape-generated-svg-file-to-bitmap-for-sprites http://tavmjong.free.fr/INKSCAPE/MANUAL/html/CommandLine-Export.html
STLtoSVG,and SVG to Bmp的更多相关文章
- JQUERY PLUGIN:BARCODE条形码插件
1)query.barcode.js安装 同其他jquery插件一样,只需要将jquery框架和jquery.barcode.js导入页面即可. <script type="text/ ...
- 快速加载DXF、DWG格式文件控件ABViewer
ABViewer是一种高品质,低成本,高效率的多功能设计及工程文档管理应用程序. ABViewer为您提供专业的cad文件浏览和编辑工具. 支持多种格式,如:DWG格式, DXF, DWF, Hewl ...
- GoAccess日志分析工具
1.1 GoAccess简介 GoAccess是一个非常良心的开源软件,它的良心之处体现在如下方面: 1)安装简单: 2)操作容易: 3)界面酷炫: GoAccess 官网 https://goacc ...
- Barcode.js功能强大的条码生成jQuery插件
本文转载自http://www.uedsc.com/barcode-js.html Barcode.js是一个基于jQuery库的插件,用于绘制条形码或者二维码,能够生成基于DIV+CSS或者Canv ...
- 网页截图工具CutyCapt
网页截图工具CutyCapt CuteCapt是Kali Linux提供的一款网页截图工具.该工具运行在命令行中,可以将WebKit引擎解析的网页保存为图片.它保存的文件支持矢量图和位图两大类型, ...
- react技术栈实践(1)
本文来自网易云社区 作者:汪洋 背景 最近开发一个全新AB测试平台,思考了下正好可以使用react技术开发. 实践前技术准备 首先遇到一个概念,redux.这货还真不好理解,大体的理解:Store包含 ...
- (转)OL记载Arcgis Server切片
http://blog.csdn.net/gisshixisheng/article/details/47955787 概述: 本文讲述如何在OpenLayers中调用Arcgis Server切片并 ...
- PIE加载自定义服务数据详细介绍
这段时间我一直在研究如何用PIE加载在线地图服务,遇到了许多问题,多亏了技术员小姐姐的帮助,才让我能正确加载ArcGIS Online在线服务.天地图在线地图和谷歌在线地图.我是根据博客园PIE官方博 ...
- 鲜为人知的 Windows 技能
IE/Edge 竟然可以转换图片格式 SVG 转 PNG.SVG 转 BMP 在图片上点击右键,选择"图片另存为" Windows/Office 屏幕录制 office 竟然带有屏 ...
随机推荐
- MySQL的数据库引擎的类型
你能用的数据库引擎取决于mysql在安装的时候是如何被编译的.要添加一个新的引擎,就必须重新编译MYSQL.在缺省情况下,MYSQL支持三个引擎:ISAM.MYISAM和HEAP.另外两种类型INNO ...
- INTELLIJ IDEA集成CHECKSTYLE(转)
转自:http://www.cnblogs.com/kiwi-wang/p/4166410.html 本文中使用intelliJ IDEA版本为14.0.1,其他版本差异不大,可同样安装. 下载安装C ...
- 【性能优化】优化笔记之一:图像RGB与YUV转换优化
本文主要介绍如何优化您自己的CODE,实现软件的加速.我们一个图象模式识别的项目,需要将RGB格式的彩色图像先转换成黑白图像.图像转换的公式如下: Y = 0.299 * R + 0.587 * G ...
- 使用zTree控件制作的表格形式的树形+数据菜单
測试了一下,兼容ie7以上, chrome opera ff 不使用对方css /*------------------------------------- zTree Style version: ...
- C++中虚函数的作用是什么?它应该怎么用呢?(转)
虚函数联系到多态,多态联系到继承.所以本文中都是在继承层次上做文章.没了继承,什么都没得谈. 下面是对C++的虚函数这玩意儿的理解. 一, 什么是虚函数(如果不知道虚函数为何物,但有急切的想知道,那你 ...
- 关于MyEclipse查看底层源码出现source not found的问题(MyEclipse、Eclipse配置JAD)
一.MyEclipse 第一步: 下载jad.exe文件:jad下载地址 eclipse插件:net.sf.jadclipse_版本号.jar下载地址一 net.sf.jadclipse_版 ...
- Velocity 语法示例
一.简介: 1)它允许任何人使用简单而强大的模板语言来引用定义在 java 代码中的对象" 2)Velocity是一个基于java的模板引擎,简称VTL(Velocity Template ...
- overcast
关于一个利用relative的简单布局,firefox上出现一点问题,暂且不明原因 firefox的 chrome的 代码记录 <!DOCTYPE html> <html lang= ...
- 3.2:pandas数据的导入与导出【CSV,JSON】
一:CSV数据 一]:导入数据 1)从CSV文件读入数据:pd.read_csv("文件名"),默认以逗号为分隔符 D:\data\ex1.csv文件内容: ...
- Android -------- 序列化器生成xml文件