开源网格划分软件

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021958-6312b9ce0a7cb.jpg

网格划分技术作为有限元仿真中的核心一环,历来是工程师们头疼且费时较多的一个环节,目前主流商用软件都提供通用的网格划分功能。作为软件用户群体,我们很少去探究网格划分背后的算法问题,而且也无需去做过多的探索,不过今天小编将截取部分论文研究成果,为大家展示从底层计算机图形学方面提供的算法实践成果,这些成果涵盖了三角形、四边形、四面体、六面体,或是粒子群等离散形式,同时为大家推荐几个网格专用处理工具,感兴趣的可以作进一步的深入了解和研究,在此特别膜拜一下国内在计算机图形方面的大牛团队,浙大鲍虎军、山大陈宝权、MSRA团队以及国外亚琛工业大学Prof. Dr. Leif Kobbelt团队,相关图片均来自上述团队论文成果。所以从层级上讲,网格划分是有限元开展的基础工作,而这些底层图形学算法又是网格划分的基础,也就是基础中的基础,咱们是用户层,人家是软件开发层,还是人家更厉害,不得不服。

1 部分论文成果图

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021958-6312b9ce563c8.gif

下面是一些看起来极度舒适的离散图片,对于强迫症患者而言更是有一种心灵上的解脱,一起观赏一下(由于作者水平和专业所限,尚无法为大家一一解读论文,感兴趣的可以自行检索,图文附引用)。

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021958-6312b9ce6590a.jpg

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021958-6312b9ce7f96d.jpg

[1] Frame Field Generation through Metric Customization. Tengfei Jiang, Xianzhong Fang, Jin Huang, Hujun Bao, Yiying Tong, Mathieu Desbrun ACM Transaction on Graphics(TOG),(conditional accept),2015.

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021958-6312b9ce9c40f.jpg

[2] Perceptually Guided Rendering of Texture Point-based Models. Lijun Qu, Xiaoru Yuan, Minh X. Nguyen, Gary Meyer and Baoquan Chen In Proceeding of the 3rd IEEE/Eurographics Symposium on Point-Based Graphics (PBG06), Pages 95-102. Boston, MA, USA. July 29-30, 2006.

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021958-6312b9cebb80e.jpg

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021958-6312b9ced5f4a.jpg

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021958-6312b9ceefacf.jpg

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021959-6312b9cf157da.jpg

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021959-6312b9cf30934.jpg

[3] All-Hex Meshing using Closed-Form Induced Polycube. Xianzhong Fang, Weiwei Xu, Hujun Bao, Jin Huang,ACM Transactions on Graphics (TOG), 35(4), 2016.

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021959-6312b9cf4beef.jpg

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021959-6312b9cf675ab.jpg

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021959-6312b9cf84845.jpg

[4] Integrating Mesh and Meshfree Methods for Physics-Based Fracture and Debris Cloud Simulation. Nan Zhang, Xiangmin Zhou, Desong Sha, Xiaoru Yuan, Kumar K. Tamma, and Baoquan Chen. In Proceeding of the 3rd IEEE/Eurographics Symposium on Point-Based Graphics (PBG06), Pages 145-154. Boston, MA, USA. July 29-30, 2006.

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021959-6312b9cfa49e8.jpg

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021959-6312b9cfc2348.jpg

[5] A Convolutional Decoder for Point Clouds using Adaptive Instance Normalization. Isaak Lim, Moritz Ibing, Leif Kobbelt.Eurographics Symposium on Geometry Processing 2019.

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021959-6312b9cfdebd6.jpg

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903022000-6312b9d0053ac.jpg

[6] All-Hex Meshing using Singularity-Restricted Field. Yufei Li,Yang Liu,Weiwei Xu,Wenping Wang,Baining Guo. ACM Transactions on Graphics (TOG) – Proceedings of ACM SIGGRAPH Asia 2012.

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903022000-6312b9d02174e.jpg

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903022000-6312b9d03d71f.jpg

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903022000-6312b9d0579f4.jpg

dc0056340f0c00e69eb5bcc98228fa10.png

[7] Structured Volume Decomposition via Generalized Sweeping.Gao X, Martin T, Deng S, Cohen E, Deng Z, Chen G.IEEE Trans Vis Comput Graph. 2016 Jul;22(7):1899-911. doi: 10.1109/TVCG.2015.2473835. Epub 2015 Aug 27.

d38f7a6b4d478dd884ed31d81f58b5f1.png

47ae72933be7c3aa0db7354e42663952.png

bf508bd277859a9be766b85acccf4d6b.png

[8] Surface Smoothing and Quality Improvement of Quadrilateral/Hexahedral Meshes with Geometric Flow. Zhang Y, Bajaj C, Xu G. Computational Visualization Center, Institute for Computational Engineering and Sciences, The University of Texas at Austin, USA. jessica@ices.utexas.edu.

2 软件工具推荐

https://www.caxkernel.com/wp-content/uploads/2022/09/20220903021958-6312b9ce563c8.gif

最后,推荐几个轻型的专用网格处理软件(非Hypermesh、ANSA),如果自己研究底层程序编写或者自定义一些模型求解过程,可以作为网格生成工具使用。

2.1 MsehLab

MeshLab是一个开源的处理三角形网格的C++处理框架,提供了三角网格的数据结构和算法,诸如曲面重建、编辑、修复、光顺、编辑等算法。MeshLab并没有集成太多独特的算法,但是作为一个三维网格数据的显示工具和框架已被学术界广泛使用,并作为科研的必备程序库之一。

9a1c15511600d84fcd58d6b001b95a19.png

2.2 Libigl

Libigl是由瑞士Ethz大学的Olga Sorkine研究小组开发的C++网格处理库,使用说明文档比较齐全,很容易上手使用。它具有较好的构造稀疏离散微分算子和有限元稀疏方程组等功能。有很多研究人员对其有贡献,包括:Alec Jacobson, Daniele Panozzo, Christian Schüller, Olga Diamanti, Qingnan Zhou, Nico Pietroni, Stefan Bruggerr , Kenshi Takayama, Wenzel Jakob, Nikolas De Giorgis, Luigi Rocca, Leonardo Sacht, Olga Sorkine-Hornung。

9d382df0aa49cd0daa54cacb3ce9a5a3.gif

2.3 Trimmesh

Trimesh是由美国Princeton大学的Thomas Funkhouser研究小组开发的C++网格处理库。非常容易上手,使用不难,适合初学者。但是其中的相关算法实现比较少。

50e7e6bd611e8b993a040b88ce848042.png

2.4 OpenMesh/OpenFlipper

OpenMesh是由德国RWTH Aachen大学的Leif Kobbelt研究小组开发的C++网格处理库。OpenFlipper是基于OpenMesh基础上架构的网格处理框架,使用非常广泛。

603a62a00410ff85f84f52ff1e68cd43.png

1fda60370d4c6b47fbc6dd2a1627df08.png

2.5 TetGen

(A Quality Tetrahedral Mesh Generator and a 3D Delaunay Triangulator):是最有名的空间四面体网格生成库,由华人学者Hang Si博士所开发。该算法库获得 了2012年SGP会议的最佳开源软件奖。

b9cbb70ef9979dd6dc823cdb4f27e8f8.png

21baa6988d9242629309ba5628a91165.png

2.6 CGAL (Computational Geometry Algorithms Library)

CGAL是一套开源的C++算法库,提供了计算几何相关的数据结构和算法,诸如三角剖分(2D约束三角剖分及二维和三维Delaunay三角剖分),Voronoi图(二维和三维的点,2D加权Voronoi图,分割Voronoi图等),多边形,多面体(布尔运算),网格生成(二维Delaunay网格生成和三维表面和体积网格生成等),几何处理(表面网格简化,细分和参数化等),凸壳算法,搜索结构(近邻搜索,kd树等),插值,形状分析,拟合等。

f596f7fd037b06f3e327d9b2b68aaf67.png

aa26eef51dd720f8f01b0c764c352d28.png

2.7 VEGA FEM

Vega is a computationally efficient and stable C/C++ physics library for three-dimensional deformable object simulation. It is designed to model large deformations, including geometric and material nonlinearities, and can also efficiently simulate linear systems. Vega contains about 145,000 lines of code, and is open-source and free. It is released under the 3-clause BSD license, which means that it can be used freely both in academic research and in commercial applications.

324c5c88280621d85c0087be29e04522.png

597a2dc961be82e1f0a3cbdd9a14df2b.png

以上,是关于有限元程序开发以及使用过程中可能涉及的底层离散算法。这些算法充满艺术美学,让人眼前一亮,有门槛又非常脑洞有趣,希望对大家产生一些帮助,拓展一些技术边界,如果觉得文章内容不错,欢迎“在看”和分享~

特别致谢:a.中国科学技术大学刘利刚教授(Prof. Dr. Ligang Liu) || b.CSDN会员hjwang1

另欢迎关注公众号,更多文章发布于weixin公众号:cae_space

扫一扫关注。

366b9125f451c4883bae8a6f4cfc73ad.png

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片