1.本技术涉及场景可视化技术领域,特别涉及一种三维数字孪生场景的生成方法;还涉及一种三维数字孪生场景的生成装置、设备以及计算机可读存储介质。
背景技术:2.数字孪生是利用物理模型、传感器更新、运行历史等数据,集成多学科、多物理量、多尺度、多概率的仿真过程,在虚拟空间中完成映射,从而反映相对应的实体装备的全生命周期过程。目前,三维数字孪生场景的构建方式主要使用代码开发,开发过程中需要开发人员了解相关的三维开发知识,具有相当高的学习成本,开发时实时预览性不足,开发难度高,开发效率低,开发的场景不具有复用性,在有新场景需求时又需要重新开发,需要耗费较大的人力。
3.有鉴于此,提供一种代码复杂度低、开发效率高以及能够实时预览的三维数字孪生场景生成方案已成为本领域技术人员亟待解决的技术问题。
技术实现要素:4.本技术的目的是提供一种三维数字孪生场景的生成方法,代码复杂度低、开发效率高并且能够实时预览。本技术的另一个目的是提供一种三维数字孪生场景的生成装置、设备以及计算机可读存储介质,均具有上述技术效果。
5.为解决上述技术问题,本技术提供了一种三维数字孪生场景的生成方法,包括:
6.在编辑器中添加数据获取节点、数据处理节点以及三维模型映射节点;
7.利用所述数据获取节点获取实时点位数据;
8.利用所述数据处理节点处理所述实时点位数据;
9.利用所述三维模型映射节点根据所述数据处理节点的处理结果生成三维渲染模板;
10.利用场景渲染器根据所述三维渲染模板创建三维数字孪生场景。
11.可选的,所述利用所述数据获取节点获取实时点位数据包括:
12.利用所述数据获取节点,通过websocket协议获取实时点位数据。
13.可选的,还包括:
14.在所述编辑器中添加模拟数据生成节点;
15.利用所述模拟数据生成节点生成模拟数据。
16.可选的,还包括:
17.在所述编辑器中添加事件管理节点;
18.利用所述事件管理节点处理事件操作,并将处理结果转化为事件数据流。
19.可选的,还包括:
20.在所述编辑器中添加逻辑运算节点与算术运算节点;
21.利用所述逻辑运算节点对数据流进行逻辑运算;
22.利用所述算术运算节点对数据流进行算术运算。
23.可选的,还包括:
24.在所述编辑器中添加基础数据类型节点;
25.利用所述基础数据类型节点创建配置数据。
26.为解决上述技术问题,本技术还提供了一种三维数字孪生场景的生成装置,包括:
27.数据获取节点添加模块,用于在编辑器中添加数据获取节点、数据处理节点以及三维模型映射节点;
28.数据获取模块,用于利用所述数据获取节点获取实时点位数据;
29.数据处理模块,用于利用所述数据处理节点处理所述实时点位数据;
30.模板生成模块,用于利用所述三维模型映射节点根据所述数据处理节点的处理结果生成三维渲染模板;
31.场景创建模块,用于利用场景渲染器根据所述三维渲染模板创建三维数字孪生场景。
32.可选的,所述数据获取模块具体用于利用所述数据获取节点,通过websocket协议获取实时点位数据。
33.为解决上述技术问题,本技术还提供了一种三维数字孪生场景的生成设备,包括:
34.存储器,用于存储计算机程序;
35.处理器,用于执行所述计算机程序时实现如上任一项所述的三维数字孪生场景的生成方法的步骤。
36.为解决上述技术问题,本技术还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述的三维数字孪生场景的生成方法的步骤。
37.本技术所提供的三维数字孪生场景的生成方法,包括:在编辑器中添加数据获取节点、数据处理节点以及三维模型映射节点;利用所述数据获取节点获取实时点位数据;利用所述数据处理节点处理所述实时点位数据;利用所述三维模型映射节点根据所述数据处理节点的处理结果生成三维渲染模板;利用场景渲染器根据所述三维渲染模板创建三维数字孪生场景。
38.可见,本技术所提供的三维数字孪生场景的生成方法,可利用简单的拖拉拽的方式编排节点,利用节点生成三维渲染模板,进而由场景渲染器根据生成的三维模板渲染三维数字孪生场景,整个过程不需要代码开发,达到了代码设计复杂度低的效果。另外,本技术所提供的技术方案利用预先定义的节点,自由组合节点就可以灵活地配置场景,利用拖拽可以快速构建复杂的三维展示场景,能够极大的提高效率。此外,本技术所提供的技术方案中当节点在配置完成后,数据就会在节点间流动,并不断传递新数据。新的数据生成新的三维渲染模板,场景渲染器解析新的三维渲染模板,就能够实时的渲染三维数字孪生场景,达到实时预览场景效果。
39.本技术所提供的三维数字孪生场景的生成装置、设备以及计算机可读存储介质均具有上述技术效果。
附图说明
40.为了更清楚地说明本技术实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
41.图1为本技术实施例所提供的一种三维数字孪生场景的生成方法的流程示意图;
42.图2为本技术实施例所提供的一种数据流流向示意图;
43.图3为本技术实施例所提供的一种三维数字孪生场景的生成装置的示意图;
44.图4为本技术实施例所提供的一种三维数字孪生场景的生成设备的示意图。
具体实施方式
45.本技术的核心是提供一种三维数字孪生场景的生成方法,代码复杂度低、开发效率高并且能够实时预览。本技术的另一个核心是提供一种三维数字孪生场景的生成装置、设备以及计算机可读存储介质,均具有上述技术效果。
46.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
47.请参考图1,图1为本技术实施例所提供的一种三维数字孪生场景的生成方法的流程示意图,参考图1所示,该方法主要包括:
48.s101:在编辑器中添加数据获取节点、数据处理节点以及三维模型映射节点;
49.s102:利用所述数据获取节点获取实时点位数据;
50.s103:利用所述数据处理节点处理所述实时点位数据;
51.s104:利用所述三维模型映射节点根据所述数据处理节点的处理结果生成三维渲染模板;
52.s105:利用场景渲染器根据所述三维渲染模板创建三维数字孪生场景。
53.数据获取节点负责获取实时的点位数据。在一些实施例中,所述利用所述数据获取节点获取实时点位数据包括:利用所述数据获取节点,利用websocket协议获取实时点位数据。实时的点位数据可以包括三维数字孪生场景的位置、大小、状态、展示的文本以及视频等等。
54.具体而言,数据获取节点可将不同的数据获取地址转换为websocket连接,利用websocket协议与服务器建立安全数据通道,获取实时的点位数据。其中,在与服务器建立安全数据通道后,为了实现实时点位数据的流转,可将数据转换为数据流,以便将数据流转到后续的节点。
55.数据处理节点负责处理实时点位数据。数据处理节点主要包括防抖节点、节流节点、数据连接节点、统计节点、延迟节点、数据提取节点、动画过度节点、切换节点以及数据类型转换节点。防抖节点与节流节点用作数据流量的控制。数据连接节点用作将两个数据连接在一起。统计节点用作统计流过的数据量。延迟节点用作将数据延迟传递给下一个节点。数据提取节点用作提取传递过来的数据中取某一个数据。动画过渡节点用作将单个数
据处理为一串连续变化的数据。切换节点用作数据传入后,在真值(编程上的true)假值(false)两个之间切换。数据类型转换节点用作将数据类型从一种类型转换为另一种类型。
56.三维模型映射节点对接场景渲染器,负责在获取数据处理节点的处理结果后,根据处理结果生成用于场景渲染的三维渲染模板。三维渲染模板包含了三维数字孪生场景的配置数据。
57.场景渲染器获取三维渲染模板,并根据三维渲染模板完成渲染,得到三维数字孪生场景。此外,场景渲染器还会在三维渲染模板更新时,更新场景数据。场景数据包括场景的背景图、需要展示的视频、文本等等。
58.当需要生成三维数字孪生场景时,只需将数据获取节点、数据处理节点以及三维模型映射节点拖入编辑器中,由数据获取节点、数据处理节点以及三维模型映射节点各自执行相应的操作,得到三维渲染模块,并最终利用场景渲染器根据所述三维渲染模板创建三维数字孪生场景。
59.在上述实施例的基础上,在一些实施例中,还包括:
60.在所述编辑器中添加模拟数据生成节点;
61.利用所述模拟数据生成节点生成模拟数据。
62.模拟数据生成节点负责生成模拟数据。模拟数据用于前期的场景测试以及后期的模型动画。模拟数据生成节点主要包括计时器节点、随机数节点、抖动数据节点、随机运动节点以及自动旋转节点。计时器节点用于生成计时数值。随机数节点用于生成随机数。抖动数据节点用于生成在一个范围内来回变化的三维向量数据。随机运动节点用于生成在一个范围内随机变化的三维向量数据。自动旋转节点用于生成递增的旋转角度四维向量。
63.在上述实施例的基础上,在一些实施例中,还包括:
64.在所述编辑器中添加事件管理节点;
65.利用所述事件管理节点处理事件操作,并将处理结果转化为事件数据流。
66.事件管理节点负责处理三维数字孪生场景中的鼠标操作、键盘操作等,并将结果处理为事件数据流。处理的结果是指事件操作产生的事件描述对象。例如,鼠标点击的位置。将事件管理节点拖入编辑器中,即可利用事件管理节点执行处理鼠标操作等的操作。
67.在上述实施例的基础上,在一些实施例中,还包括:
68.在所述编辑器中添加逻辑运算节点与算术运算节点;
69.利用所述逻辑运算节点对数据流进行逻辑运算;
70.利用所述算术运算节点对数据流进行算术运算。
71.逻辑运算节点负责对单个或者多个数据流进行逻辑运算,并返回逻辑运算结果数据流,用于后续的逻辑控制。算术运算节点负责对单个或者多个数据流进行算术运算,并返回算术运算结果数据流,用于后续的数据控制。
72.在上述实施例的基础上,在一些实施例中,还包括:
73.在所述编辑器中添加基础数据类型节点;
74.利用所述基础数据类型节点创建配置数据。
75.基础数据类型节点负责创建配置数据,例如三维数字孪生场景的坐标位置,外观颜色等。
76.数据获取节点、基础数据类型节点、模拟数据生成节点、事件管理节点、算术运算
节点、数据处理节点、逻辑运算节点、三维模型映射节点以及场景渲染器之间的数据流流向,可以参考图2所示。图2中的三维渲染器是指上文所述的场景渲染器。
77.综上所述,本技术所提供的三维数字孪生场景的生成方法,可利用简单的拖拉拽的方式编排节点,利用节点生成三维渲染模板,进而由场景渲染器根据生成的三维模板渲染三维数字孪生场景,整个过程不需要代码开发,达到了代码设计复杂度低的效果。另外,本技术所提供的技术方案利用预先定义的节点,自由组合节点就可以灵活地配置场景,利用拖拽可以快速构建复杂的三维展示场景,能够极大的提高效率。此外,本技术所提供的技术方案中当节点在配置完成后,数据就会在节点间流动,并不断传递新数据。新的数据生成新的三维渲染模板,场景渲染器解析新的三维渲染模板,就能够实时的渲染三维数字孪生场景,达到实时预览场景效果。
78.本技术还提供了一种三维数字孪生场景的生成装置,下文描述的该装置可以与上文描述的方法相互对应参照。请参考图3,图3为本技术实施例所提供的一种三维数字孪生场景的生成装置的示意图,结合图3所示,该装置包括:
79.数据获取节点添加模块10,用于在编辑器中添加数据获取节点、数据处理节点以及三维模型映射节点;
80.数据获取模块20,用于利用所述数据获取节点获取实时点位数据;
81.数据处理模块30,用于利用所述数据处理节点处理所述实时点位数据;
82.模板生成模块40,用于利用所述三维模型映射节点根据所述数据处理节点的处理结果生成三维渲染模板;
83.场景创建模块50,用于利用场景渲染器根据所述三维渲染模板创建三维数字孪生场景。
84.在上述实施例的基础上,作为一种具体的实施方式,所述数据获取模块20具体用于利用所述数据获取节点,通过websocket协议获取实时点位数据。
85.在上述实施例的基础上,作为一种具体的实施方式,还包括:
86.模拟数据生成节点添加模块,用于在所述编辑器中添加模拟数据生成节点;
87.模拟数据生成模块,用于利用所述模拟数据生成节点生成模拟数据。
88.在上述实施例的基础上,作为一种具体的实施方式,还包括:
89.事件管理节点添加模块,用于在所述编辑器中添加事件管理节点;
90.事件操作处理模块,用于利用所述事件管理节点处理事件操作,并将处理结果转化为事件数据流。
91.在上述实施例的基础上,作为一种具体的实施方式,还包括:
92.运算节点添加模块,用于在所述编辑器中添加逻辑运算节点与算术运算节点;
93.逻辑运算模块,用于利用所述逻辑运算节点对数据流进行逻辑运算;
94.算术运算模块,用于利用所述算术运算节点对数据流进行算术运算。
95.在上述实施例的基础上,作为一种具体的实施方式,还包括:
96.基础数据类型节点添加模块,用于在所述编辑器中添加基础数据类型节点;
97.配置数据创建模块,用于利用所述基础数据类型节点创建配置数据。
98.本技术所提供的三维数字孪生场景的生成装置,可利用简单的拖拉拽的方式编排节点,利用节点生成三维渲染模板,进而由场景渲染器根据生成的三维模板渲染三维数字
孪生场景,整个过程不需要代码开发,达到了代码设计复杂度低的效果。另外,本技术所提供的技术方案利用预先定义的节点,自由组合节点就可以灵活地配置场景,利用拖拽可以快速构建复杂的三维展示场景,能够极大的提高效率。此外,本技术所提供的技术方案中当节点在配置完成后,数据就会在节点间流动,并不断传递新数据。新的数据生成新的三维渲染模板,场景渲染器解析新的三维渲染模板,就能够实时的渲染三维数字孪生场景,达到实时预览场景效果。
99.本技术还提供了一种三维数字孪生场景的生成设备,参考图4所示,该设备包括存储器1和处理器2。
100.存储器1,用于存储计算机程序;
101.处理器2,用于执行计算机程序实现如下的步骤:
102.在编辑器中添加数据获取节点、数据处理节点以及三维模型映射节点;利用所述数据获取节点获取实时点位数据;利用所述数据处理节点处理所述实时点位数据;利用所述三维模型映射节点根据所述数据处理节点的处理结果生成三维渲染模板;利用场景渲染器根据所述三维渲染模板创建三维数字孪生场景。
103.对于本技术所提供的设备的介绍请参照上述方法实施例,本技术在此不做赘述。
104.本技术还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如下的步骤:
105.在编辑器中添加数据获取节点、数据处理节点以及三维模型映射节点;利用所述数据获取节点获取实时点位数据;利用所述数据处理节点处理所述实时点位数据;利用所述三维模型映射节点根据所述数据处理节点的处理结果生成三维渲染模板;利用场景渲染器根据所述三维渲染模板创建三维数字孪生场景。
106.该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
107.对于本技术所提供的计算机可读存储介质的介绍请参照上述方法实施例,本技术在此不做赘述。
108.说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备以及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
109.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
110.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术
领域内所公知的任意其它形式的存储介质中。
111.以上对本技术所提供的三维数字孪生场景的生成方法、装置、设备以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术权利要求的保护范围。
技术特征:1.一种三维数字孪生场景的生成方法,其特征在于,包括:在编辑器中添加数据获取节点、数据处理节点以及三维模型映射节点;利用所述数据获取节点获取实时点位数据;利用所述数据处理节点处理所述实时点位数据;利用所述三维模型映射节点根据所述数据处理节点的处理结果生成三维渲染模板;利用场景渲染器根据所述三维渲染模板创建三维数字孪生场景。2.根据权利要求1所述的生成方法,其特征在于,所述利用所述数据获取节点获取实时点位数据包括:利用所述数据获取节点,通过websocket协议获取实时点位数据。3.根据权利要求1所述的生成方法,其特征在于,还包括:在所述编辑器中添加模拟数据生成节点;利用所述模拟数据生成节点生成模拟数据。4.根据权利要求1所述的生成方法,其特征在于,还包括:在所述编辑器中添加事件管理节点;利用所述事件管理节点处理事件操作,并将处理结果转化为事件数据流。5.根据权利要求1所述的生成方法,其特征在于,还包括:在所述编辑器中添加逻辑运算节点与算术运算节点;利用所述逻辑运算节点对数据流进行逻辑运算;利用所述算术运算节点对数据流进行算术运算。6.根据权利要求1所述的生成方法,其特征在于,还包括:在所述编辑器中添加基础数据类型节点;利用所述基础数据类型节点创建配置数据。7.一种三维数字孪生场景的生成装置,其特征在于,包括:数据获取节点添加模块,用于在编辑器中添加数据获取节点、数据处理节点以及三维模型映射节点;数据获取模块,用于利用所述数据获取节点获取实时点位数据;数据处理模块,用于利用所述数据处理节点处理所述实时点位数据;模板生成模块,用于利用所述三维模型映射节点根据所述数据处理节点的处理结果生成三维渲染模板;场景创建模块,用于利用场景渲染器根据所述三维渲染模板创建三维数字孪生场景。8.根据权利要求7所述的生成装置,其特征在于,所述数据获取模块具体用于利用所述数据获取节点,通过websocket协议获取实时点位数据。9.一种三维数字孪生场景的生成设备,其特征在于,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述的三维数字孪生场景的生成方法的步骤。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的三维数字孪生场景的生成方法的步骤。
技术总结本申请公开了一种三维数字孪生场景的生成方法,包括:在编辑器中添加数据获取节点、数据处理节点以及三维模型映射节点;利用所述数据获取节点获取实时点位数据;利用所述数据处理节点处理所述实时点位数据;利用所述三维模型映射节点根据所述数据处理节点的处理结果生成三维渲染模板;利用场景渲染器根据所述三维渲染模板创建三维数字孪生场景。应用该方法可以实现代码复杂度低、开发效率高并且能够实时预览。本申请还公开了一种三维数字孪生场景的生成装置、设备以及计算机可读存储介质,均具有上述技术效果。具有上述技术效果。具有上述技术效果。
技术研发人员:郭遵义 梁艺 刘召琴 何礼仁 文涛
受保护的技术使用者:成都星云智联科技有限公司
技术研发日:2022.04.18
技术公布日:2022/7/4