3D打印技术之切片引擎(7)
【此系列文章基于熔融沉积( fused depostion modeling, FDM )成形工艺】
这一篇文章我说一下填充算法的同心填充(Concentric),同心填充Slice3r中有实现。但说实话,我还在那家公司的时候,公司并没有用它打印过模型,也不知道具体效果如何,但我在我的程序中实现它,是为了对其他的填充算法做一个补充,后来也发现它确实有价值。它的优势主要体现在它是完全依据模型的拓扑结构自然生成的,它不会对边界产生冲击,使得影响到最终的成型质量;沿着边界矢量环,环环向内推进,直到离散的填满整个层区。如下图(这是我在最初版本中做出的效果,虽然不是很理想,但是能反映出正确的趋势):
这里实现的话大致有两个思路:
A:利用前面讲的生成内边的技术类似的进行向内的填充;
B:先利用某一个映射把图形矢量离散化,然后利用图像处理技术进行填充,最后在把离散的图像逆映射回原来的矢量集合。
上面的图片显示的是B的效果。从理论上讲最佳方案应该是A方案,这是因为A非常规则,并且是零误差的。但是A的实现有难度。
A方案首先基于我在前面讲到的添加内边的技术,然后从外向内“层层推进”,这里要注意“裂变”,也就是在层层推进的过程中,环断开的情况,这时候需要依赖阈值自动裂开及闭合的算法,这里就不详述此算法。就如上图所展示的那样,最外层是一个环,里面就会出现多个环的情况。最终会收敛为很小的环(理论上是一个点),还要注意阈值,当环所围成的区域面积小于阈值时,需要把该环忽略。
B方案的特点是实现较为简单,易于维护。缺点是由于该算法是基于图像处理算法,要求对原图形进行离散化再插值拟合回去的两过程,会带来较大的误差。对一些含有较多直径很小的分支的切面矢量集合,会产生不可容忍的错误。原因是:
矢量集合\overset{discretize}{\rightarrow}位图\overset{fit}{\rightarrow}边界矢量集合
是一个依赖“逼近”的算法过程。
B方案也要实现这个“层层推进”,每一层都执行操作:
位图\overset{erosion(mathematical morphology)}{\rightarrow}位图\overset{fit}{\rightarrow}边界矢量集合
直到收敛到内部面积小于 A(阈值)A(阈值)的矢量环,则停止迭代,算法结束。这里要用到图像处理中的数学形态学——腐蚀。每次做腐蚀操作的时候,也可以对膨胀腐蚀任意组合(先腐蚀后膨胀,类似于开运算),根据项目的具体需求可以选择相关的实现方式。描述数学形态学的资料很多,实现代码也很多,这里就不对这一块进行详述。
最后要做的前面几讲中反复强调的,就是把每层的边界矢量首尾相接,以最小“间断律”的输出所有的边界矢量。当然,这在同心填充中处理起来很简单,只需要把“每一圈”的矢量简单的组织成首尾相接矢量环就可以了。然后以“圈”为单位从外向内打印就可以了。
参考文献:
[1] 多连通曲面离散点集的 3D 三角划分算法研究 肖双九, 邱泽阳, 张树生, 杨海成(西北工业大学)
[2] 数字图像处理 冈萨雷斯著
转载请注明出处:http://blog.csdn.net/fourierfeng/article/details/49045401
3D打印技术之切片引擎(7)相关推荐
- 3D打印技术之切片引擎(1)
3D打印技术之切片引擎(1) 文章转自: http://blog.csdn.net/fourierFeng/article/details/43736393?locationNum=9&f ...
- dlp型3d打印机_【论文新萃】光聚合成型3D打印技术复制印章研究
光聚合成型3D打印技术复制印章研究 冯明帅1 彭嘉俊2 马立2 (1.广东省公安厅刑事技术中心,广东广州,510050 2.广东警官学院刑事技术系,广东广州,510440) 摘 要:本项目研究 ...
- 3d打印技术与计算机,讲述3D打印技术是如何实现打印的,与普通的打印有何不同...
原标题:讲述3D打印技术是如何实现打印的,与普通的打印有何不同 3D打印技术,自打上世纪80年代逐渐运用至今,就一直都备受关注,直至目前仍被大家所纷纷议论.那它是一种怎样的技术?能打印出哪些东西来呢? ...
- 计算机技术在文物修复中的应用,【3D打印技术在文物修复中的应用原稿材料】...
3D打印技术在文物修复中的应用(原稿) <3D打印技术在文物修复中的应用(原稿).doc>由会员分享,可免费在线阅读全文,更多与<3D打印技术在文物修复中的应用(原稿)>相关文 ...
- 各类3D打印技术的制造工艺原理
LOM LOM 3D打印技术简介 LOM工艺称为叠层实体制造.英文全称为:Laminated Object Manufacturing. 在我国也被称为分层实体制造SSM (slicing solid ...
- 还原光聚合3D打印技术知多点
基于还原光聚合方法的3D打印机具有填充有光聚合物树脂的容器,然后用UV光源硬化.还原光聚合3D打印技术都有哪些?让3dlabstore告诉你! 立体光刻(SLA) 该过程中最常用的技术是Stereol ...
- 嵌入式ARM处理器与持续火热的3D打印技术有何关联
4月17日,科技博主「@老师好我叫何同学」在停更73天后,更新了一条关于"3D打印机"的视频,让这个曾因科普5G技术而登上央视新闻的年轻UP主,再次登上了热搜榜首. 在大众的印象里 ...
- 科普:3D打印技术是怎么回事
3D打印技术根据成型原理分为不同的类型,最常见的有熔融沉积成型技术(FDM)和立体光固化成型技术(SLA).创客的集结号已吹响,一起来了解下有关3D打印的知识吧. FDM技术是什么? FDM技术在桌面 ...
- 波音公司计划利用 3D 打印技术制作模块化卫星
2019独角兽企业重金招聘Python工程师标准>>> 波音的大型高端卫星,成本都要 1.5 亿美元之高,但据华尔街日报的报道指,他们最新的计划却是希望藉 3D 打印技术和模块化设计 ...
最新文章
- sys.stderr.write(f“ERROR: {exc}“) SyntaxError: invalid syntax错误
- 面向对象设计使用语言选择
- php负载均衡慕课网,Nginx实现负载均衡
- Docker的Solomon Hykes在OSCON上的主题演讲的要点
- Stanford CS230深度学习(二)手动搭建DNN
- matlab malloc,[原创]Matlab 高性能代码编写(三)内存是要先分配再使用的
- skynet源码阅读4--定时器实现
- java app的强制更新吗_java – Spring JPA / Hibernate事务强制插入而不是更新
- 什么是强人工智能程序,需要具备哪些基本能力?
- 5个值得安利的PC软件,建议收藏转发
- 教你如何修复硬盘及恢复硬盘丢失数据
- java单线程刷功德程序
- 叶子的故事 作者:佚名
- RFID电子标签有哪些区
- java多表头导出excel表格_【每日一点】1. Java如何实现导出Excel单表头或多表头
- 订单超时未支付的解决方案
- 计算机更新并关机能关闭吗,win10关机不想更新并关机而是直接关机步骤设置
- STM32+ws2812灯条,点灯升级版
- SEO工作,不要三人成虎!
- emac接口与phy交互
热门文章
- java二维码生成 使用SSM框架 搭建属于自己的APP二维码合成、解析、下载
- Apache JMeter压测工具
- GT-S7500 显示存储卡满解决办法
- java二叉树计算深度
- maple的Linux安装步骤,Linux下面如何安装maple,mathematica,matlab这类软件?
- 3GPP TS 23501-g51 中英文对照 | 5.2.3 Identification and authentication
- 推断统计学 假设检验 分布
- WPF学习之深入浅出话模板
- IOS14桌面布局图片怎么设置
- 2021年全球及中国集成电路销售及趋势分析