掌桥专利:专业的专利平台
掌桥专利
首页

模型生成方法、渲染方法与产线虚拟仿真系统

文献发布时间:2024-04-18 20:01:23


模型生成方法、渲染方法与产线虚拟仿真系统

技术领域

本发明属于自动化产线虚拟仿真技术领域,具体涉及一种模型生成方法、渲染方法与产线虚拟仿真系统。

背景技术

产线3D虚拟仿真是自动化产线设计的重要步骤,通过虚拟仿真可以验证设备布局和工艺设计可行性,缩短项目周期。虚拟仿真时进行不同操作时,对于模型的显示精度要求不同。例如在进行设备干涉性分析时,需要显示高精度模型数据;在进行节拍分析时,低精度模型数据也能满足要求。

现有产线3D虚拟仿真在加载场景时,都是直接加载高精度的模型数据,而且不能切换模型显示精度。产线场景包含模型数量多,模型文件体积大,渲染开销大,导致用户在进行虚拟仿真时交互操作不流畅。

发明内容

本发明的目的在于解决上述现有技术中存在的难题,提供一种模型生成方法。

本发明是通过以下技术方案实现的:一种模型生成方法,包括如下步骤:获取模型数据,并对模型数据进行重构,得到三角形网格拓扑结构作为原始精度模型;计算每个三角形的重要度因子,所述重要度因子计及曲率权重与中心三角形的面积权重;选取重要度因子较低的三角形进入待折叠堆,采用网格简化算法对待折叠堆中的三角形进行简化,得到精度下降的模型。

进一步的,所述重要度因子的计算公式如下:

式中,f表示中心三角形的重要度因子;m表示与中心三角形共边的相邻三角形的数量;n表示中心三角形的法向量,n

进一步的,所述网格简化算法包括如下步骤:

取待折叠堆中堆顶的三角形进行折叠;

删除退化的三角形及相应的顶点,更新折叠三角形周围三角形的拓扑连接与重要度因子;

从待折叠堆中移除折叠三角形后受影响三角形;

重复上述步骤,直到遍历完待折叠堆。

进一步的,根据简化率设置模型精度,简化率越高,模型精度越低,简化率按如下方式计算:(简化前顶点数量-简化后顶点数量)/简化前顶点数量*100%。

本发明还提供一种模型渲染方法,采用本发明的模型生成方法生成不同精度的模型,并根据需要渲染不同精度的模型。

进一步的,计算模型渲染代价,按照渲染代价从小到大的顺序依次渲染各个模型;模型渲染代价的计算方式如下:渲染代价=模型文件大小/场景加载范围内的模型数量。

进一步的,默认渲染低精度模型,比所述低精度模型精度更高的模型均视为高精度模型;构建激活池和回收池;激活池用于存储待渲染的高精度模型与低精度模型,回收池用于存储渲染完毕的高精度模型。

进一步的,包括如下精度切换方式:高精度切换到低精度、低精度切换到高精度、高精度切换到另一高精度;

高精度切换到低精度时,将高精度模型放入回收池中,渲染低精度模型;

低精度切换到高精度时,首先在回收池中查找相应的高精度模型,若未找到则请求生成相应的高精度模型,获取相应的高精度模型并放入激活池中,从激活池中提取相应的高精度模型进行渲染;

高精度切换到另一高精度时,首先在回收池中查找相应的高精度模型,若找到,则把旧的高精度模型放入回收池中,若未找到则请求生成相应的高精度模型,获取相应的高精度模型并放入激活池中,从激活池中提取相应的高精度模型进行渲染。

进一步的,为激活池设置第一模型数量阈值与第一模型文件大小阈值,当超过第一模型数量阈值或第一模型文件大小阈值时,按照维护规则删除激活池内的高精度模型对激活池进行动态维护,直到小于模第一型数量阈值与第一模型文件大小阈值;

所述维护规则包括:①检查模型是否在相机视野内,把不在视野内的模型按照入激活池时间排序,优先从激活池移除入池时间早的模型;②如果经过步骤①处理,仍然超出阈值,则继续按入池时间进行模型排序,入池时间早的模型优先移除;

为回收池设置第二模型数量阈值与第二模型文件大小阈值,当超过第二模型数量阈值或第二模型文件大小阈值时,优先删除回收池内的入池时间更早的高精度模型对回收池进行动态维护,直到小于第二模型数量阈值与第二模型文件大小阈值。

本发明还提供一种产线虚拟仿真系统,用于实现本发明的模型渲染方法,并包括数据库、服务器与客户端,数据库用于存储模型数据,服务器用于生成不同精度的模型并保存低精度模型与原始精度模型,客户端用于从服务器获取模型进行渲染。

与现有技术相比,本发明的有益效果包括:

1、本发明的模型生成方法通过重要度因子能够提高网格简化质量:使用f

2、按照渲染代价从小到大的顺序依次渲染各个模型,可以快速渲染出场景概况,提升用户体验。虽然总渲染时间相同,但是文件小的或者出现次数多的物体会先渲染出来,让用户在等待时可以快速看到场景整体,不至于长时间面对空白场景。

3、本发明设置回收池与激活池,高精度模型被切换后,不会被立即删除,而是放到回收池中管理,低精度模型占用空间小,下载后不进行自动删除,这样能够提高渲染效率。

4、动态维护回收池与激活池避免数据堆积造成的渲染卡滞,提高渲染流畅性。

附图说明

图1为网格简化算法的原理图;

图2为计算中心三角形的重要度因子的原理图;

图3为本具体实施方式中模型生成方法的流程图;

图4为模型清单树图;

图5为模型精度切换的流程图。

具体实施方式

一种产线虚拟仿真系统,包括数据库、服务器与客户端,数据库用于存储模型数据,服务器用于生成不同精度的模型并保存低精度模型与原始精度模型,客户端用于从服务器获取模型进行渲染。

下面结合附图对产线虚拟仿真系统的运作过程进一步详细描述。

1)模型数据上传到服务器,模型数据文件是stl格式,所以需要进行模型数据的拓扑重构(重构方法属于现有技术在此不再赘述),得到三角形网格拓扑结构作为原始精度模型;使用基于三角形折叠的网格简化算法对模原始精度模型进行简化,网格简化算法的原理图参考图1所示,模型中的三角形数量减少,生成对应的低精度模型。

网格简化算法的流程如图3所示。

为了提高网格简化质量,避免平坦区域的三角形被反复折叠,本发明对网格简化算法进行了改进,即本发明提出了三角形的重要度因子,其中,三角形的重要度因子计算公式如下,

如图2所示,f表示中心三角形的重要度因子;m表示与中心三角形共边的相邻三角形的数量;n表示中心三角形的法向量,n

重要度因子综合考虑了三角形的曲率与三角形面积。若无f

这里的曲率是类曲率,不是严格意义曲率,用于度量三角面的不平坦程度。相邻三角面法向量点积越接近1,说明法向量越接近平行,即两个平面方向差异越小,越平坦。

因此,使用f

2)在服务器端同时保存低精度模型和原始精度模型。其它精度模型在需要时,由服务器使用原始精度模型通过网格简化算法生成。为了便于陈述,除了初始生成的低精度模型,其它的统称为高精度模型。

3)客户端访问3D虚拟仿真场景时,发送仿真场景id到服务器,服务器在数据库中查询该场景包含的模型清单,并将模型清单组装成树图,如图4。

4)客户端加载模型清单树图,用户通过选择树图上的一个或者多个对象来定义场景加载范围,并把对象的id发送到服务器。

5)服务器根据场景加载范围,计算模型渲染代价,按照渲染代价从小到大依次发送低精度模型到客户端。渲染代价计算方式如下:渲染代价=模型文件大小/场景加载范围内的模型数量。

用户确定好场景加载范围后,模型数量是固定的,不同的对象具有不同的文件大小,但是用户选择的对象应全部加载

6)客户端依次接收低精度模型,并依次渲染到场景中。

先接收渲染代价小的,后接收渲染代价大的,可以快速渲染出场景概况,提升用户体验。虽然总渲染时间相同,但是文件小的或者出现次数多的物体会先渲染出来,让用户在等待时可以快速看到场景整体,不至于长时间面对空白场景。而且,一般仿真时,工装、产品模型比较大,但是占据场景的空间小;机器人、标准设备的模型比较小,但是占据场景的空间大。

模型加载时,首次默认加载低精度的。客户端选择了高精度模型,就不需要接收低精度模型了。

7)客户端为高精度模型建立两个模型池:激活池和回收池。每个都包含设备名称、精度参数、文件大小、入池时间等信息。高精度模型被渲染时,放入激活池中管理。高精度模型被切换后,不会被立即删除,而是放到回收池中管理。低精度模型占用空间小,下载后保存再激活池中不进行自动删除。客户端接收的所有场景相关数据都是存在客户端的缓存中,以上模型池都是客户端缓存中的数据或者参数命名。

8)在需要切换模型精度时,用户选择设备和目标精度参数,客户端根据目标精度参数判断切换类型。切换类型有三种,流程如图5:①.高精度切换到低精度,需要把该设备的高精度模型放到回收池中,重新渲染低精度模型数据。②.从低精度切换到高精度,需要在回收池中查找该设备对应精度参数的高精度模型是否存在,如果存在,则把该高精度模型从回收池移到激活池中,并进行渲染。如果不存在,则发送请求到服务器,由服务器生成对应精度的模型并发送到客户端。客户端进行渲染,同时把该模型放到激活池中进行管理。③.高精度(旧)切换到另一个参数的高精度(新)。新的高精度模型处理同②,旧的高精度模型放到回收池中。

9)为激活池设置第一模型数量阈值与第一模型文件大小阈值,当超过第一模型数量阈值或第一模型文件大小阈值时,说明高精度显示的模型过多,容易导致卡滞。按照以下规则对激活池进行动态维护:①.检查模型是否在相机视野内,把不在视野内的模型按照入激活池时间排序,优先从激活池移除入池时间早的模型;②.如果经过步骤①处理,仍然超出阈值,则继续按入池时间进行模型排序,入池时间早的模型优先移除。按照以上优先顺序,把高精度模型切换为低精度模型,直到模型数量和大小低于阈值。

10)为回收池设置第二模型数量阈值与第二模型文件大小阈值,进入回收池的高精度模型不是立即删除,而是并保存一段时间,短时间内重新切换到该模型时可以不用向后端请求数据。当超过第二模型数量阈值或第二模型文件大小阈值时,按照入池的先后顺序进行删除,先删除最先入池的模型。

上述技术方案只是本发明的实施方式,对于本领域内的技术人员而言,在本发明公开了原理的基础上,很容易做出各种类型的改进或变形,而不仅限于本发明上述具体实施例所描述的技术方案,因此前面描述的只是优选的,而并不具有限制性的意义。

相关技术
  • 电子设备的显示控制方法、装置、电子设备和存储介质
  • 电子设备控制方法及装置、电子设备及存储介质
  • 电子设备控制方法、存储介质及电子设备
  • 一种浴室加热装置和用于控制浴室加热装置的方法、设备、电子设备及计算机可读存储介质
  • 一种智能控制方法、智能控制装置、电子设备和存储介质
  • 电子设备、电子设备的控制方法及存储有控制电子设备的控制部所执行的程序的存储介质
  • 电子设备、用于控制电子设备的控制方法和存储介质
技术分类

06120116552380