DAP发布计算几何算法库DAP-CG:解决增材制造软件数据瓶颈,Boost许可证免费商用
亚琛工业大学数字增材制造研究所(DAP)最近干了件实在事,他们把自己为3D打印CAM软件编写的计算几何算法,全都开源了。
这个库叫DAPComputationalGeometry,简称DAP-CG,用C#编写,提供构建方向、支撑结构生成、排布嵌套、切片、扫描策略这些几何处理算法,专门用来开发和优化增材制造CAM软件。
这些算法能干啥?比如,确定零件怎么放,怎么在打印平台上排布,避免互相重叠,这些都是AM CAM的基本功能。
就像下面这张图里展示的这样。

选什么算法、怎么实现,直接决定了软件的计算量、内存占用和稳定性,最后又会影响零件的成本、交付周期和质量。
你想想看,现在零件越来越大,机器还集成多个激光器,AM CAM软件要处理的数据量也跟着飙升。
如果算法和数据结构扩展性差,处理时间可能从几分钟膨胀到几小时甚至几天,内存需求也翻好几倍,软件基本就没法用了。
靠升级硬件能解决问题吗?只能缓解一部分。
所以呢,很多时候,用高效的几何算法就能直接避免这些开销。
研究所直接指出,光靠更强的计算硬件,补不了低效软件的坑,真正高效的几何处理算法,能从根上省掉一大笔额外计算开销。
坦率的讲,DAP-CG是站在geometry3Sharp和Clipper2这两个开源库的肩上,又加了不少针对二维多边形和向量的扩展和性能优化。
比如有一个算法能把多个多边形合并成一个多边形,这样后面计算密集的环节要处理的数据量就小多了;还有的功能是防止自交多边形、去掉冗余顶点。
DAP也用了现代C#特性,比如Span和SIMD,就是单指令多数据流,大大加速了几何体的平移和旋转。


说到底,DAP-CG里的功能都是从DAP的实际工业开发任务里来的。
在「增材制造工业化与数字化(IDAM)」项目的嵌套优化软件开发过程中,用了多边形压缩算法,把嵌套所需的内存减少了5倍。
把同样的方法用到切片和扫描策略计算软件上,也能实现类似的节省。
在实践中,这决定了一个大型制造任务是否能在配备32GB内存的普通台式机上处理,还是需要一台内存多几倍的工作站或服务器,以及在租用计算资源时,你要为多少内存付费。
如果软件跑在按需付费的计算租赁平台上,内存更省,钱也花得少。
另一个例子是他们的零件方向软件,基于质量和成本目标,确定零件的最佳打印方向。
DAP-CG里的算法能算出不同方向是否需要支撑,需要多少,这可是增材制造中成本和后处理的关键因素。
支撑结构会多加材料、提高成本,后处理也麻烦,所以把支撑结构减下来,对整个构建经济性影响很大。
DAP想通过开源库把这些功能提供给开发者,变成可复用组件。
其实,DAP-CG使用的是Boost软件许可证,一种很宽松的开源许可证,研究项目、商业软件、工业产品都能免费拿去用。
这个IDAM项目,是德国前联邦教育与研究部资助的,现在叫联邦研究、技术与航天部。
几何处理更快,不只是省了准备数字文件的时间。
早期设计阶段自动化、优化之后,交付周期能缩短,生产能力也能提上来。
像AMIS Runtime这类平台,已经把计算用到生产过程里了。
但这种自动化到底实不实用,还是得看底层几何操作能不能扛住重复又越来越复杂的任务。
开源还有一个好处,就是不用重复造轮子。
DAP-CG本来就是基于geometry3Sharp和Clipper2加工业项目功能做的,再加上宽松许可证,开发人员可以在商业产品里直接集成、检查、修改。
再往前看,reAM250项目整个实验性LPBF平台都开源了,包括软件、设计文件和控制文档。
DAP-CG在CAM开发层面也用了同样的思路,让几何处理组件能供研究人员和工业软件公司复用。
当然,这并不等于能跳过验证。
CAM开发人员还是得针对自己的机器、材料和生产要求去测试功能。
这个库的直接价值,就是降低了围绕越来越复杂的增材制造构建准备的计算和开发门槛。


京公网安备11010802046387号