3D打印技术之切片引擎(1)

切片引擎,是3D打印技术的灵魂,其实质就是将3D模型进行分层,输出矢量集合,是应该归为图形学的一门技术,其对数学算法要求很高,复杂性主要体现在要对3D模型的不同的拓扑结构做出判断并输出与之相符合的矢量集合。就我个人的观点,目前世界上最优秀的切片引擎在这一点上也没有做的很好,所以对于这一门技术,可进步的空间是很大的,未知的空间非常辽阔。

非常有幸的是在我的上一家公司里面,我有机会开发这样的一个模块,我负责由3D模型生成矢量集合,另一位同事把我生成的矢量集合再生成为Gcode,据我所知,目前国内还没有相关的自主研发的成熟的软件。但也非常不幸,这个模块在最需要我突破的时候我由于更重要的原因离开了这家公司,在公司这样一个重要的模块,我几乎是独立开发的,我已经有了很多的想法,我想如果我继续做下去,我会发表论文,我有机会做成国内最优秀的软件,但这些只能是假设,我离开了,这一切似乎都结束了。但我想把我那段时间的所想所得分享出来,我所做的并不高明,我要学习的东西太多了,当下我更需要的是学习交流的机会(这是我离开公司的最重要原因),但如果我的东西能对您有一丁点的启发,我也会感到非常幸福,非常欣慰。

我就先简单提一下目前国际上做的最成熟的这类模块,一共有两款切片引擎:skeinforge和slic3r。

   skeinforge是采用脚本语言python开发,是公司里面一直在用的模块,这款引擎首先是样式有些单一,采用双边打印,内部填充用的四边形填充(采用单一的四边形填充有其道理,只有四边形可实现以行为单位的连续打印,打印机暂停的时间最少),不像slice3r多边打印可以设置,填充样式也可以选择。但我认为skeinforge是目前最成功的引擎,原因是判断引擎的优劣主要是看对模型不同拓扑结构的判断及处理,在这一点上skeinfoege是非常成功的,它实现了对切片不同的拓扑结构采用了最合适它的处理,而且鲁棒性很强,它的简单自然有它的道理,它是真正的简约的软件。

slic3r是用c++开发的,相对于skeinfoege,它显得更为华丽,打印方式多样,打印的边数可以设置,填充方式包括:

同心填充,蜂窝填充,线填充,希尔伯特曲线填充

阿基米德和铉填充,八角星螺旋填充

另外支持可变层高(对斜率较小的模型结构实现了精细打印),该软件在不断的升级改进中,是很多国内3D
printer公司的首选,但就目前来讲,打印质量比skeinforge稍差,随着升级,未来会超越skeinforge。

对此,我总结了一下,一个成功的切片引擎软件应该符合一下几点:

1,打印出来的模型与原模型相似度最高

这是最主要的一点,给你一个猫的模型,你打印出来一只狗,总不合适吧,不过这也太夸张了,真正优越的切片

软件,总是可以对最精细的结构进行细微的实现,使其在打印出来的实体中栩栩如生的显示出来。对此,我曾经在公

司里面提出用工程力学的方式来动态组织填充矢量,而不是死板的用这几种填充方式,但可惜我不懂工程力学,也没

有及时的和这方面的专家联系(我的失误),但这的确应该是未来解决这类问题的思路,就好像骨小梁一样,根据力

学分布,动态的组织矢量集合!

2,打印出来的模型稳固性强——硬度高或者柔韧性强

就目前来说,流行的填充方式:线填充,蜂窝填充,同心填充。蜂窝填充的稳固性是最好的,在蜂窝填充里三角

形填充的稳固性较强,六边形填充的柔韧性较强。

3,省材料

4,打印时间短

要做到这几点,输出的矢量集合就需要:

1,灵活的填充矢量集合生成算法适应不同的模型的不同的拓扑结构,使得填充矢量对边界冲击力最小,又能很好的支撑住整个模型。

2,矢量集合有效组织,首尾相连,矢量数量最小,平均长度最大,方差最小。

3,多边打印,防止斜率小的时候上层塌陷以及保护外边界。

4,优越的支撑生成算法,支撑生成的越少越好,首先是为了省材料,其次与实体可以更容易的剥离。

对此我的切片程序实现了其中的大部分功能,已经能对模型进行较好的切片形成矢量集合,打印质量接近skeinforge,但是目前还没有成熟的引擎

该有的模型修补功能,clip算法也是最原始的(我的程序中的clip算法是自己写的,slic3r和cura两款引擎的clip算法都用的同一个程序:

clipper.hpp和clipper.cpp,里面的算法是出自一篇论文

(an extension of Bala Vatti‘s clipping algorithm:
"A generic solution to polygon clipping")
),也没有很好的鲁棒性

。对一些不规范的模型切片会出现错误,算法方面也没有太大的闪光,但是不管怎样,在三个月的时间里,我已经实现了切片引擎的框架,我认为

也是有所得的。下面就是我的引擎的一些测试图片,在下一篇文章里,我将把其中的一些思想分享给大家。

1 同心填充(红色是边界,蓝绿相间是填充)

2同心填充加双边打印

3三角网格填充加双边打印

4六边形网格填充

5线填充加双边打印

OK,今天的内容大概就是这些,我们下篇文章见:)

参考资料:

slic3r使用说明

时间: 2024-11-05 16:03:35

3D打印技术之切片引擎(1)的相关文章

3D打印技术之切片引擎(3)

[此系列文章基于熔融沉积( fused depostion modeling, FDM )成形工艺] 从这一篇文章开始,我讲一下实体切片方面的一些技术. 切片引擎,实体部分大致包括: 提取边界矢量-->添加多边-->生成填充矢量集合. 其中最难的是生成填充矢量集合,也是整个切片引擎技术的核心,因为衡量一款引擎的好坏的四个核心要素--稳固性:与原始模型的相似度:用了多少材料:打印快慢,都是主要取决于填充矢量的生成技术.目前生成填充矢量的算法还有很多未知的问题有待攻克,对于这一块技术我将在最后与大

3D打印技术之切片引擎(5)

[此系列文章基于熔融沉积( fused depostion modeling, FDM )成形工艺] 从这一篇文章开始,就开始说填充.在3D打印切片技术中,填充算法是最核心的部分.3D打印技术的常用的指标包括:打印速度,稳固性,柔韧性,逼真度,密度(关系着使用打印材料的多少),都与填充算法有着直接的关系.可以说衡量一个切片引擎的优劣主要看它的填充算法是否优越. 其实我开始研发切片引擎的时候,由于不是所有的模型打印都需要填充,所以前面的算法开发时间很短,大部分时间耗在了填充算法的研究上,也就是填充

3D打印技术之切片引擎(2)

[此系列文章基于熔融沉积( fused depostion modeling, FDM )成形工艺] 在上一篇文章中,我从总体上介绍了一下切片引擎技术,从这一篇文章开始,我开始说一下具体的技术细节. 切片引擎,实体部分包括: 提取边界向量-->添加多边-->生成填充向量集合. 还包括生成支撑向量集合.就先说下支撑算法. 生成支撑向量集合分为人工生成和自动生成两种,优越的支撑算法主要体现在 1,省材料. 2,生成速度快. 3,生成的支撑体与零件实体较少的接触与干涉,有利于剥离. 毕竟,切片引擎的

3D打印技术之切片引擎(4)

[此系列文章基于熔融沉积( fused depostion modeling, FDM )成形工艺] 这一篇文章我讲一下多边打印的问题,多边打印是切片引擎的一项关键的技术,首先,它可以保证打印实体表面免受内部填充的冲击,保证外观的真实度:其次,在上层在相对于下层倾斜较大时,多边打印可以很好的起到支撑的作用,避免上层塌陷. 但是,目前来说,我的多边打印还不够普适,对一些不规范的模型,以及模型中非常尖锐的特征效果并不好,对绝大部分的较为平滑的模型是完全没有问题的. 下面就简单说一下它的原理:假设边界

重庆用3D打印技术修复世界最大千手观音

近日,重庆市大足石刻景区在千手观音主尊修复工程中首次引入3D打印技术.记者在修复现场看到,缩小版的千手观音主尊像的3D打印模型比例为1:3,打印模型主要用于主尊像的形态修复.? 重庆市大足县宝顶山千手观音雕刻于南宋中后期,距今有800多年历史.整个石刻佛像,包括一个千手观音主尊和四个侍者,有7.7米高.12.5米宽.刻在15?30米高的悬崖上,覆盖了近88平米的崖面,是世界上最大的千手观音雕像.精密拋光? 这次针对千手观音的大型修复工作,是由政府拨款进行的.研究人员没有采用传统的模具和铸造的方法

LAIKA公司应用ProJet 660 色彩3D打印技术改变3D动漫脸部定格动画

LAIKA公司应用 ProJet 660 色彩3D打印技术改变3D动漫脸部定格动画 通过使用彩色3D打印机,我们不仅能够推动面部表情效能提升到一个新的水平,同时我们也能实现人物的脸部的细节和微妙变化水平.布赖恩?麦克莱恩 - 如果你曾经想知道建立3D动画制作需要进行多少工作,得到的答案是"很多,很多" - 特别是如果工作依靠被称为停止运动的技术.定格动画需要动画师捕捉每个操纵建模字符拼凑一个流畅自然的动作.例如只是一秒的面部表情动作,可能12到24种不同的模型改变是必需的. 实现一站式

苹果公司欲使用3D打印技术进行新产品的测试

苹果公司的产品是很多人都在追随的,作为世界上最大的电子产品的企业来说,因为它的产品给了人们更好的用户体验.怎么才能做到这一点呢,这就源于他们的输入设计实验室,这里可以称之为最隐秘并且先进的原型测试实验室其中的一个.这里有很多非常精密的仪器,也有很多为了完美产品的工作人员,不管是从外观体验感以及性能他们都希望能够带给大家完美的产品. 在最近一次苹果公司的公关活动中,他们向媒体展示了这个实验室,让它从神秘不为人知的背后走到了人们的面前,一方面表现出他们对于产品性能测试的重视,同时也向人们说明他们对于

3D打印技术让实现更多天马行空的创意

在3D打印技术还没有出现的时候,我们脑海中一些天马行空的想象是没办法实现的.也有很多创意相关的工作人员在叹息,似乎有一种生不逢时的遗憾.近年来,随着3D打印技术越来越成熟,自由设计成为一种优势弥补了一些在传统制造业的不足,似乎个性化的定制才是一种时尚和潮流的标志.在这样的背景下,一大批充满着个性化的创意产品走入人们的生活,让人们对创意有了更新更奇特的了解. 不久前在微博上热传的一组雕塑图片被很多人转发.一些具有重庆本土特色的方言被创意者形象的刻在了雕塑上,所以当人们看到最终的作品时很有感触.这组

3D打印技术的研究成果-3D打印机厂家

3D打印技术,是以计算机三维设计模型为蓝本,通过软件分层离散和数控成型系统,利用激光束.热熔喷嘴等方式将金属粉末.陶瓷粉末.塑料.细胞组织等特殊材料进行逐层堆积粘结,最终叠加成型,制造出实体产品.与传统制造业通过摸具.车铣等机械加工方式对原材料进行定型.切削以最终生产成品不同,3D打印将三维实体变为若干个二维平面,通过对材料处理并逐层叠加进行生产.不需要众多的人力,直接从计算机图形数据中便可生成任何形状的零件,使生产制造得以向更广的生产人群范围延伸. 然而,通过专项研究,3D打印主要的技术形式有