基于Grasshopper的复杂变密度多孔结构建模方法

文档序号:27626925发布日期:2021-11-29 15:27阅读:775来源:国知局
基于Grasshopper的复杂变密度多孔结构建模方法
基于grasshopper的复杂变密度多孔结构建模方法
技术领域
1.本发明涉及面向3d打印的多孔结构建模技术领域,具体涉及一种基于grasshopper的复杂变密度多孔结构建模方法。


背景技术:

2.多孔结构是一种贯通或封闭的孔洞构成的网格结构,由于其具有较高的强度重量比和较好的冲击吸收性能,被广泛应用于航天航空、汽车工业、桥梁建筑等领域。随着增材制造(3d打印)技术的发展,多孔结构的制造变得更加简单高效。为了充分发挥多孔结构轻质、高强度的优势,其力学性能、材料分布设计一直是轻质材料结构领域研究的热点。
3.研究者们发现均匀的多孔结构在受到不同载荷的情况下,其材料分布不一定是最优分布。理论上,应该根据多孔结构受载荷情况优化多孔结构的材料分布,这样设计出的变密度多孔结构将极大地提高多孔材料的性能。因此需要寻找一种能自动地、快速地且几何参数可控的变密度多孔结构模型设计方法。
4.grasshopper(简称gh)是rhino软件环境下运行的采用程序算法生成模型的插件,与传统建模工具相比,gh的最大特点是可以向计算机下达更高级更复杂的逻辑建模指令,使计算机根据拟定的算法自动生成模型结果,最后可以在rhino软件中bake出最后的实体网格模型,可以输出为.stl文件。多孔结构模型的构建技术已经有不少,但是复杂变密度多孔结构中孔隙率范围达0.1

0.9且变密度形式多样的参数可控自动构建技术尚未存在。


技术实现要素:

5.为了克服现有技术存在的缺陷与不足,本发明提供一种基于grasshopper的复杂变密度多孔结构建模方法,本方法解决了目前变密度多孔结构构建的单一性、构建难度大、局部参数化、可控性较差等不足,在开发复杂变密度多孔结构模型上有着极大的便利性和可操作性。
6.本发明的第二目的在于提供一种基于grasshopper的复杂变密度多孔结构建模系统。
7.本发明的第三目的在于提供一种存储介质。
8.本发明的第四目的在于提供一种计算设备。
9.为了达到上述目的,本发明采用以下技术方案:
10.一种基于grasshopper的复杂变密度多孔结构建模方法,包括下述步骤:
11.采用grasshopper构建用于填充多孔结构的空间框架,并在空间框架中填充入体素;
12.采用grasshopper构建多孔结构单胞;
13.将多孔结构单胞填充到所述空间框架中的每个体素中,得到网格面;
14.采用grasshopper统一所述网格面的法向量方向,复制所述网格面并反转复制所得网格面的法向量方向;
15.采用grasshopper生成与所述网格面、反转网格面分别对应的两组偏移距离,并且网格面不同部位对应的偏移距离数值不同;
16.根据两组偏移距离沿两个网格面法向量方向分别偏移两个网格面,得到不同部位相距不同距离的两个网格面;
17.生成连接两个网格面边缘的网格,焊接所有网格得到封闭的变密度多孔结构网格模型;
18.对封闭的变密度多孔结构网格模型进行柔化,得到细化后的封闭变密度多孔结构网格模型。
19.作为优选的技术方案,所述体素均为立方体,大小相等。
20.作为优选的技术方案,所述多孔结构单胞采用曲面型的单胞。
21.作为优选的技术方案,所述两组偏移距离中的数值个数与两个网格顶点的个数相同。
22.作为优选的技术方案,所述采用grasshopper生成与所述网格面、反转网格面分别对应的两组偏移距离,具体步骤包括:
23.设定参数,所述参数包括吸引点、偏移最大距离、偏移最小距离和影响因子,所述吸引点根据所需多孔结构的构造在框架内或框架外放置,所述影响因子用于控制变密度的梯度;
24.生成与每个网格顶点一一对应的偏移距离。
25.作为优选的技术方案,在所述根据两组偏移距离沿两个网格法向量方向分别偏移两个网格的步骤之后,删除法向量方向相反的两个原网格。
26.作为优选的技术方案,所述生成连接两个网格面边缘的网格,焊接所有网格得到封闭的变密度多孔结构网格模型,具体步骤包括:
27.将两个偏移后的网格面合并为一个网格集合;
28.获取两个网格面的边缘线,判断网格是否已封闭,若未封闭,则循环进行网格连接,若已封闭,则焊接偏移后的两个网格面和生成的所有连接网格面;
29.遍历其中一个网格的边缘线,生成相应的连接网格;
30.遍历两个网格边缘线的每个顶点,记录未连接的部分边缘线的顶点,调节连接网格的顶点使其与记录的顶点重合,以此调整连接网格的大小使其封闭两个偏移后得到的网格面;
31.将生成的连接网格合并到两个网格面的集合中,焊接偏移后的两个网格面和生成的所有连接网格面,得到封闭的变密度多孔结构模型。
32.为了达到上述第二目的,本发明采用以下技术方案:
33.一种基于grasshopper的复杂变密度多孔结构建模系统,包括:空间框架构建模块、体素填充模块、多孔结构单胞构建模块、多孔结构单胞填充模块、法向量方向统一模块、网格面复制及网格面法向量方向反转模块、偏移距离生成模块、网格偏移模块、网格面边缘连接网格生成模块、焊接模块和柔化模块;
34.所述空间框架构建模块用于采用grasshopper构建用于填充多孔结构的空间框架;
35.所述体素填充模块用于在空间框架中填充入体素;
36.所述多孔结构单胞构建模块用于采用grasshopper构建多孔结构单胞;
37.所述多孔结构单胞填充模块用于将多孔结构单胞填充到所述空间框架中的每个体素中,得到网格面;
38.所述法向量方向统一模块用于采用grasshopper统一所述网格面的法向量方向;
39.所述网格面复制及网格面法向量方向反转模块用于复制所述网格面并反转复制所得网格面的法向量;
40.所述偏移距离生成模块用于采用grasshopper生成与所述网格面、反转网格面分别对应的两组偏移距离,并且网格面不同部位对应的偏移距离数值不同;
41.所述网格偏移模块用于根据两组偏移距离沿两个网格法向量方向分别偏移两个网格,得到不同部位相距不同距离的两个网格面;
42.所述网格面边缘连接网格生成模块用于生成连接两个网格面边缘的网格;
43.所述焊接模块用于焊接所有网格得到封闭的变密度多孔结构网格模型;
44.所述柔化模块用于对封闭的变密度多孔结构网格模型进行柔化,得到细化后的封闭变密度多孔结构网格模型。
45.为了达到本发明的第三目的,本发明采用以下技术方案:
46.一种存储介质,存储有程序,所述程序被处理器执行时实现如上述基于grasshopper的复杂变密度多孔结构建模方法。
47.为了达到本发明的第四目的,本发明采用以下技术方案:
48.一种计算设备,包括处理器和用于存储处理器可执行程序的存储器,所述处理器执行存储器存储的程序时,实现上述基于grasshopper的复杂变密度多孔结构建模方法。
49.本发明与现有技术相比,具有如下优点和有益效果:
50.(1)本发明得到的多孔结构模型的孔隙率范围0.1

0.9,适用于多种基本单元(单胞、体素),能自动地、快速地生成几何参数可控的复杂变密度多孔结构模型。
51.(2)本发明采用参数化建模的方式建立变密度多孔结构模型,可通过改变参数得到不同孔隙率,不同变密度形式的多孔结构模型。
附图说明
52.图1为本发明基于grasshopper的复杂变密度多孔结构建模方法的流程示意图;
53.图2为本发明由体素填充的空间框架示意图;
54.图3为本发明螺旋二十四面体(gyroid)单胞外形示意图;
55.图4为本发明以gyroid为单胞的薄壳网格示意图;
56.图5为本发明连接两个网格面的流程示意图;
57.图6为本发明以gyroid为单胞的内小外大变密度结构示意图。
具体实施方式
58.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
59.实施例1
60.如图1所示,本实施例提供一种基于grasshopper的复杂变密度多孔结构建模方法,包括下述步骤:
61.s1:使用grasshopper建立用于填充多孔结构的空间框架,并在空间框架中填充入体素;
62.如图2所示,为了使单胞填充入体素后沿x、y、z三个方向等比例缩放,步骤s1中的体素全为立方体,大小相等;体素大小与单胞外轮廓大小可能不相同,填充时会对单胞进行缩放以贴合于体素的大小,体素为立方体可保证单胞结构不变形。
63.s2:使用grasshopper构建多孔结构单胞;
64.如图3所示,为了使后续偏移网格面,生成变密度多孔结构的操作正常进行,本实施例所选单胞为grasshopper中能生成的曲面型的单胞,如螺旋二十四面体(gyroid)单胞,不能为桁架类的单胞。
65.s3:使用步骤s2所得的单胞填充入步骤s1所得空间框架中的每个体素中,得到网格面;
66.如图4所示,为了构建变密度多孔结构,本实施例所得网格面为没有厚度的薄壳网格面,以便于在不同部位偏移不同距离,形成不同部位不同厚度的变密度结构,此时的网格面没有厚度且网格面较为粗糙。
67.s4:使用grasshopper统一步骤s3所得网格面法向量的方向,复制此网格面并反转复制所得网格面的法向量方向;
68.为了方便偏移操作的进行,本实施例网格的法向量方向即为后续偏移网格的方向;
69.s5:使用grasshopper生成与步骤s4所得的两个网格面分别对应的两组偏移距离并且网格面不同部位对应的偏移距离数值不同;
70.为了使网格统一偏移并在不同部位偏移不同距离后网格仍保持连续,本实施例的两组偏移距离中数值的个数与两个网格顶点的个数相同,即:每个网格顶点都有相对应的偏移距离。
71.在本实施例中,在grasshopper中使用crystallon插件中的电池sta生成两组偏移距离,电池中需设定的参数有吸引点、偏移最大距离、偏移最小距离、影响因子。吸引点可根据所需多孔结构的构造在框架内或外自行放置。偏移最大距离和偏移最小距离根据实际密度需求定义。影响因子控制变密度的梯度,此值越小,密度变化越剧烈,反之,越平缓。设定好这些参数后,电池sta将生成与每个网格顶点一一对应的一组偏移距离。偏移距离的生成模式为:网格顶点越接近吸引点,顶点偏移距离越大,反之,偏移距离越小。此处构建密度内小外大的变密度多孔结构网格模型,参数设置如下:在正方体形框架的8个顶点处放置吸引点,最大偏移距离设置为2.09,最小偏移距离设置为0.44,影响因子设置为0.001;
72.s6:使用步骤s5所得的两组偏移距离沿两网格法向量方向分别偏移两网格,得到不同部位相距不同距离的两个网格面;
73.为了保证最终复杂变密度多孔结构模型的准确性,步骤s6删除法向量方向相反的两个原网格。
74.s7:使用ghpython script运算器编程生成连接两网格面边缘的网格,随后焊接所有网格得到封闭的变密度多孔结构网格;
75.在本实施例中,为了使连接两个网格面的操作快速、简捷、准确,连接两网格面的操作使用了ghpython script运算器,如图5所示,具体包括下述步骤:
76.s71:用append语句将两个偏移后的网格面合并为一个网格集合;
77.s72:用getnakededges语句获取两个网格面的边缘线,用isclosed语句判断网格是否已封闭,若未封闭,则进入循环进行连接网格的操作,若已封闭则跳出循环,进行步骤s76;
78.s73:用for循环遍历其中一个网格的边缘线,用mesh语句生成相应的连接网格;
79.s74:用for循环遍历两个网格边缘线的每个顶点,用add语句记录未连接部分边缘线的顶点,用addface语句调节连接网格的顶点使其与记录的顶点重合,以此来调整连接网格的大小使其封闭两个偏移后得到的网格面;
80.s75:用append语句将生成的连接网格合并到两个网格面的集合中以便于之后焊接操作的进行;
81.s76:用weld语句焊接偏移后的两个网格和生成的所有连接网格面,得到封闭的变密度多孔结构;
82.s8:使用grasshopper中的电池wbcatmullclark对步骤s7得到的封闭的变密度多孔结构网格模型进行柔化,得到细化后的封闭变密度多孔结构网格模型。
83.为了满足工程的实际需求且考虑到计算机的性能,步骤s8中的细化网格次数可自定义。
84.如图6所示,对网格进行两次细化得到优化后的内小外大的变密度网格结构模型,将最后所得模型bake在rhino软件中,输出为.stl格式文件,可以3d打印出实体模型。
85.基于本实施例的方法,在第九代英特尔酷睿cpu(i5

9300h),16gb内存的笔记本中,耗时2.56秒便可生成一个外轮廓边长50mm,由125个边长为10mm的体素所组成的密度内小外大的变密度gyroid型多孔结构。结果表明,利用本发明的方法可以快速自动地生成多种类型的变密度多孔结构,并且可以在grasshopper内调整几何参数,过程全程在grasshopper内部,做到模型的完全自动构建,并且可根据工程实际需求调节偏移最大距离、偏移最小距离、影响因子的大小以及吸引点的位置得到孔隙率范围为0.1

0.9,且变密度形式多样的复杂多孔结构。本发明适用于多种基本单元(单胞、体素),能自动地、快速地生成几何参数可控的复杂变密度多孔结构模型。
86.实施例2
87.一种基于grasshopper的复杂变密度多孔结构建模系统,包括:空间框架构建模块、体素填充模块、多孔结构单胞构建模块、多孔结构单胞填充模块、法向量方向统一模块、网格面复制及网格面法向量方向反转模块、偏移距离生成模块、网格偏移模块、网格面边缘连接网格生成模块、焊接模块和柔化模块;
88.在本实施例中,空间框架构建模块用于采用grasshopper构建用于填充多孔结构的空间框架;
89.在本实施例中,体素填充模块用于在空间框架中填充入体素;
90.在本实施例中,多孔结构单胞构建模块用于采用grasshopper构建多孔结构单胞;
91.在本实施例中,多孔结构单胞填充模块用于将多孔结构单胞填充到所述空间框架中的每个体素中,得到网格面;
92.在本实施例中,法向量方向统一模块用于采用grasshopper统一所述网格面的法向量方向;
93.在本实施例中,网格面复制及网格面法向量方向反转模块用于复制所述网格面并反转复制所得网格面的法向量;
94.在本实施例中,偏移距离生成模块用于采用grasshopper生成与所述网格面、反转网格面分别对应的两组偏移距离,并且网格面不同部位对应的偏移距离数值不同;
95.在本实施例中,网格偏移模块用于根据两组偏移距离沿两个网格法向量方向分别偏移两个网格,得到不同部位相距不同距离的两个网格面;
96.在本实施例中,网格面边缘连接网格生成模块用于生成连接两个网格面边缘的网格;
97.在本实施例中,焊接模块用于焊接所有网格得到封闭的变密度多孔结构网格模型;
98.在本实施例中,柔化模块用于对封闭的变密度多孔结构网格模型进行柔化,得到细化后的封闭变密度多孔结构网格模型。
99.实施例3
100.本实施例提供一种存储介质,存储介质可以是rom、ram、磁盘、光盘等储存介质,该存储介质存储有一个或多个程序,所述程序被处理器执行时,实现实施例1的基于grasshopper的复杂变密度多孔结构建模方法。
101.实施例4
102.本实施例提供一种计算设备,所述的计算设备可以是台式电脑、笔记本电脑、智能手机、pda手持终端、平板电脑或其他具有显示功能的终端设备,该计算设备包括处理器和存储器,存储器存储有一个或多个程序,处理器执行存储器存储的程序时,实现实施例1的基于grasshopper的复杂变密度多孔结构建模方法。
103.上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1