技术新讯 > 计算推算,计数设备的制造及其应用技术 > 柔性体的仿真方法及电子设备、存储介质、计算机程序产品与流程  >  正文

柔性体的仿真方法及电子设备、存储介质、计算机程序产品与流程

  • 国知局
  • 2024-07-31 23:23:46

本技术涉及图形仿真,特别涉及一种柔性体的仿真方法及电子设备、计算机可读存储介质、计算机程序产品。

背景技术:

1、在图形学领域,柔性体仿真有着非常广泛的需求,常见的仿真的柔性体包括橡胶材料、人体组织等。对于这些柔性体材料,学术界已经有了非常广泛的研究,比如经典的neo-hookean家族非线性弹性模型就是用来描述这类材料的力学模型。它们最显著的特点是极小的压缩性,在变形过程中,材料的体积基本不发生变化,而体积这一参数对于材料在三维空间不同方向上的尺寸都有关系,其具有非常高的非线性。这一特点给柔性体的仿真带来了挑战。材料的非线性程度高,表明材料对变形非常敏感,小幅度的变形可能会引起受力的大幅度变化。为提高仿真计算的准确性,往往要将仿真的时间步长,比如每次仅模拟1/1000秒甚至1/10000秒。这意味着在实时仿真过程中,求解器必须每秒进行至少1000次或10000次求解计算,这在目前硬件条件下是不现实的,即便增加硬件来做到成本也过于高昂。因此,相关方案对柔性体仿真只选择关注实时性和真实性的其中一个特性。如果选择关注实时性,则需要弱化柔性体的非线性特点,从而大幅提高仿真的时间步长。如果关注真实性,则需要降低仿真的时间步长,提高计算量,放弃实时性需求。

2、然而,随着柔性体仿真应用的不断扩展以及需求的提升,对柔性体仿真的实时性和真实性的要求也在提升,亟需合理的仿真方案,使得柔性体仿真可以兼顾实时性和真实性的效果。

技术实现思路

1、本技术实施例的目的在于提供一种柔性体的仿真方法及电子设备、存储介质、计算机程序产品,用于保证指定弹性模型内线性和非线性的部分平滑过渡,保证网格变化过程中仿真结果的稳定性,以指定弹性模型为网格更新网格的顶点坐标,能够兼顾实时性和真实性的需求。

2、一方面,本技术提供了一种柔性体的仿真方法,包括:

3、根据柔性体的每一网格在t时刻的顶点坐标,确定该网格的畸变参数;

4、基于每一网格的畸变参数,确定该网格的变形状态,并基于所述变形状态确定指定弹性模型的目标约束条件;其中,所述指定弹性模型包括线性弹性模型和非线性弹性模型,所述目标约束条件包括所述线性弹性模型和所述非线性弹性模型的权重;

5、基于每一网格对应目标约束条件下的指定弹性模型,确定t+1时刻各个网格的顶点坐标。

6、在一实施例中,所述根据柔性体的每一网格在t时刻的顶点坐标,确定该网格的畸变参数,包括:

7、根据每一网格在t时刻的顶点坐标,确定该网格的变形梯度;

8、基于每一网格的变形梯度,确定该变形梯度的行列式和该变形梯度内每一列的模长;

9、根据每一网格的变形梯度对应的行列式、每一列的模长,确定该网格的畸变参数。

10、在一实施例中,所述基于每一网格的畸变参数,确定该网格的变形状态,包括:

11、针对每一网格,判断该网格的畸变参数是否为负数,基于判断结果确定该网格是否发生翻转;

12、针对每一网格,判断该网格的畸变参数是否处于坍缩数值范围内,并基于判断结果确定该网格是否发生坍缩。

13、在一实施例中,所述线性弹性模型通过所述网格的变形梯度在每一列的模长、所述网格的各个旋转后变形梯度在每一列的模长、所述柔性体在变形梯度的每一列的变形强度,表征所述网格的第一子能量;其中,各个旋转后变形梯度由变形梯度绕各个坐标轴旋转得到;

14、所述非线性弹性模型通过所述网格的变形梯度的行列式和体积变形强度,表征所述网格的第二子能量;

15、所述指定弹性模型通过所述线性弹性模型和所述非线性弹性模型的权重,对所述第一子能量和所述第二子能量加权求和得到所述网格的能量。

16、在一实施例中,所述线性弹性模型为:

17、

18、其中,ki表示所述柔性体在变形梯度的第i列的变形强度;|fi|表示变形梯度的第i列的模长;表示变形梯度绕x轴旋转45度的旋转后变形梯度的第i列的模长;表示变形梯度绕y轴旋转45度的旋转后变形梯度的第i列的模长;表示变形梯度绕z轴旋转45度的旋转后变形梯度的第i列的模长;

19、所述非线性弹性模型为:

20、

21、其中,λ表示体积变形强度;det(f)为变形梯度的行列式。

22、在一实施例中,所述基于所述变形状态确定指定弹性模型的目标约束条件,包括:

23、针对任一网格,若该网格发生翻转且发生坍缩,基于该网格的畸变参数确定所述线性弹性模型和所述非线性弹性模型的权重;

24、对该网格在所述线性弹性模型中的变形梯度进行修正,得到修正后变形梯度;

25、设置该网格在所述非线性弹性模型中变形梯度列向量之间的夹角最小值;

26、将所述线性弹性模型和所述非线性弹性模型的权重、所述线性弹性模型中修正后变形梯度、所述非线性弹性模型中变形梯度列向量之间的夹角最小值,作为该网格的目标约束条件。

27、在一实施例中,所述基于所述变形状态确定指定弹性模型的目标约束条件,包括:

28、针对任一网格,若该网格发生翻转但未发生坍缩,基于该网格的畸变参数确定所述线性弹性模型和所述非线性弹性模型的权重;

29、对该网格在所述线性弹性模型中的变形梯度进行修正,得到修正后变形梯度;

30、将所述线性弹性模型和所述非线性弹性模型的权重、所述线性弹性模型中修正后变形梯度,作为该网格的目标约束条件。

31、在一实施例中,所述基于所述变形状态确定指定弹性模型的目标约束条件,包括:

32、针对任一网格,若该网格发生坍缩但未发生翻转,基于该网格的畸变参数确定所述线性弹性模型和所述非线性弹性模型的权重;

33、设置该网格在所述非线性弹性模型中变形梯度列向量之间的夹角最小值;

34、将所述线性弹性模型和所述非线性弹性模型的权重、所述非线性弹性模型中变形梯度列向量之间的夹角最小值,作为该网格的目标约束条件。

35、在一实施例中,所述基于所述变形状态确定指定弹性模型的目标约束条件,包括:

36、针对任一网格,若该网格未发生坍缩且未发生翻转,确定所述线性弹性模型和所述非线性弹性模型的权重为默认值。

37、在一实施例中,所述对该网格在所述线性弹性模型中的变形梯度进行修正,得到修正后变形梯度,包括:

38、对该网格的变形梯度进行奇异值分解,得到两个旋转矩阵和一个对角矩阵;

39、将该对角矩阵中的负数置为零,获得调整后矩阵;

40、以该调整后矩阵和所述两个旋转矩阵确定该网格的修正后变形梯度,用于该网格的线性弹性模型。

41、另一方面,本技术提供了一种电子设备,所述电子设备包括:

42、处理器;

43、用于存储处理器可执行指令的存储器;

44、其中,所述处理器被配置为执行上述柔性体的仿真方法。

45、进一步的,本技术提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成上述柔性体的仿真方法。

46、此外,本技术提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述柔性体的仿真方法。

47、本技术方案,在柔性体仿真过程中,在t时刻可以根据各个网格的顶点坐标确定网格的畸变参数,进而以该畸变参数确定网格的变形状态,并以变形状态进一步确定网格对应的目标约束条件,该目标约束条件包括指定弹性模型中线性弹性模型的权重和非线性弹性模型的权重,这种情况下,根据目标约束条件下的指定弹性模型可以计算出的能量更新t+1时刻各个网格的顶点坐标。这个过程中每一时刻都可以根据各个网格的变形状态,确定为该网格计算能量的指定弹性模型中线性弹性模型和非线性弹性模型的权重,从而保证了指定弹性模型内线性和非线性的部分平滑过渡,保证了网格变化过程中仿真结果的稳定性,因此,以指定弹性模型为网格更新网格的顶点坐标,能够兼顾实时性和真实性的需求,获得良好的柔性体仿真效果,实现柔性体变形在视效上的平顺变化。

本文地址:https://www.jishuxx.com/zhuanli/20240730/197343.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。