CN117111919A - 内容显示方法、电子设备及存储介质 - Google Patents
内容显示方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117111919A CN117111919A CN202211696484.9A CN202211696484A CN117111919A CN 117111919 A CN117111919 A CN 117111919A CN 202211696484 A CN202211696484 A CN 202211696484A CN 117111919 A CN117111919 A CN 117111919A
- Authority
- CN
- China
- Prior art keywords
- model
- data
- content display
- display method
- objects
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000003860 storage Methods 0.000 title claims description 15
- 230000009471 action Effects 0.000 claims abstract description 71
- 230000004044 response Effects 0.000 claims abstract description 5
- 238000004590 computer program Methods 0.000 claims description 9
- 230000003993 interaction Effects 0.000 description 25
- 238000011161 development Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 10
- 238000006243 chemical reaction Methods 0.000 description 9
- 238000011160 research Methods 0.000 description 8
- 230000000007 visual effect Effects 0.000 description 7
- 238000013461 design Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000002452 interceptive effect Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 239000000725 suspension Substances 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 239000011521 glass Substances 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000739 chaotic effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 241000737241 Cocos Species 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 230000002498 deadly effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000004382 visual function Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0486—Drag-and-drop
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Architecture (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供一种内容显示方法,该方法包括:将所述一个或多个事件的数据转化为动作对象,基于所述动作对象及预设模型生成事件模型,所述事件模型包含一个或多个动作;响应于用户对所述事件模型的操作,在所述电子设备的显示界面显示所述一个或多个动作。本申请提供的方法,不但无需编写代码实现功能,而且全图形化内容编辑,并且编辑完的内容无需再编译即可使用,解决了没有软件编程能力的开发人员不能开发XR应用的问题。
Description
技术领域
本申请涉及虚拟现实领域,尤其涉及一种内容显示方法、电子设备及存储介质。
背景技术
随着扩展现实(Extended Reality,XR)技术的飞速发展,人们对XR内容的品质的需求越来越高。而对于生产XR内容的企业来说就面临着巨大的考验:快速的开发或迭代XR的内容的同时还要兼顾XR内的品质,要想快速通过产品抢占先机就势必要又快速生产的能力,而在抢占市场后如何保护企业的口碑,就必须要求产品的内容质量要经得起用户的。如何在快速开发和保证内容质量上取得平衡,是目前市场上研究的热点。
内容的快速开发通常都需要专业的编程人员参与,而无论是招聘和培养一个专业的程序员都是需要时间和资金的投入,同时还需要配备专业的美术人员,因为无论是虚拟现实(Virtual Reality,VR)、增强现实(Augmented Reality,AR)还是其他仿真系统,其交互的内容都会涉及到虚拟物体的创建,如模型、动画、贴图以及粒子特效等。这些专业人员无疑都会给企业增加人力成本,因此急需一种无需编程的可视化内容制作方法,让内容策划人员设计完后通过其直接对内容进行开发,无需再经过复杂的代码编程实现所有的核心功能。
本文的目的是提出一种可视化的内容显示方法,不但无需编写代码实现功能,而且全图形化内容编辑,并且编辑完的内容无需再编译即可使用。
发明内容
本申请提供了一种内容显示方法、电子设备及存储介质,有助于解决非编程人员无法开发和迭代XR应用的问题。
第一方面,本申请提供了一种内容显示方法,包括:
将所述一个或多个事件的数据转化为动作对象,基于所述动作对象及预设模型生成事件模型,所述事件模型包含一个或多个动作,响应于用户对所述事件模型的操作,在所述电子设备的显示界面显示所述一个或多个动作。
本申请中,针对数据库数据进行编辑,所述数据库数据加载到系统中,将所述数据转化为对象,当所述的一个或多个事件的数据是动作数据时,会将所述步骤数据转换成一个或多个动作对象,通过所述对象转化为模型文件,将所述对象实例化,从而可以实现以图形化的方式显示交互内容,无需编码实现。
其中一种可能的实现方式中,所述基于所述动作对象及预设模型生成事件模型具体包括:将所述动作对象加载至所述预设模型中,生成事件模型,所述预设模型的名称与所述动作对象的事件名称相对应。
其中一种可能的实现方式中,将所述一个或多个事件的数据转化为动作对象包括:将所述一个或多个事件的数据转化为一个或多个步骤对象,其中,一个步骤对象包括一个或多个动作对象。
其中一种可能的实现方式中,将所述一个或多个事件的数据转化为一个或多个步骤对象包括:将所述一个或多个事件的数据转化为一个或多个流程对象,其中,一个流程对象包括一个或多个步骤对象。
其中一种可能的实现方式中,所述方法还包括:响应于用户对所述事件模型的操作,在所述电子设备的显示界面显示所述一个或多个预设模型。
其中一种可能的实现方式中,所述方法还包括:将所述数据库中的数据名称与模型的名称对应起来,将所述数据库中的数据转换成所述模型。
其中一种可能的实现方式中,所述用户对所述事件模型的操作包括鼠标操作和/或键盘操作。
其中一种可能的实现方式中,所述鼠标操作包括悬浮操作、单击操作或双击操作。
其中一种可能的实现方式中,所述键盘操作包括按住操作、单击操作和多键击中操作。
其中一种可能的实现方式中,所述一个或多个动作对象具有先后执行顺序。
第二方面,本申请提供了一种内容显示装置,应用于电子设备,所述电子设备包含数据库,所述数据库中包含一个或多个事件的数据,所述内容显示装置包括:
转化模块,用于将所述一个或多个事件的数据转化为动作对象,
生成模块,用于基于所述动作对象及预设模型生成事件模型,所述事件模型包含一个或多个动作;
显示模块,用于响应于用户对所述事件模型的操作,在所述电子设备的显示界面显示所述一个或多个动作。
其中一种可能的实现方式中,所述生成模块还用于将所述动作对象加载至所述预设模型中,生成事件模型,所述预设模型的名称与所述动作对象的事件名称相对应。
其中一种可能的实现方式中,所述转化模块还用于将所述一个或多个事件的数据转化为一个或多个步骤对象,其中,一个步骤对象包括一个或多个动作对象。
其中一种可能的实现方式中,所述转化模块还用于将所述一个或多个事件的数据转化为一个或多个流程对象,其中,一个流程对象包括一个或多个步骤对象。
其中一种可能的实现方式中,所述显示模块还用于响应于用户对所述事件模型的操作,在所述电子设备的显示界面显示所述一个或多个预设模型。
其中一种可能的实现方式中,所述转化模块还用于将所述数据库中的数据名称与模型的名称对应起来,将所述数据库中的数据转换成所述模型。
其中一种可能的实现方式中,所述内容显示装置中还包括:
交互触发模块,用于对模型文件与触发事件进行交互处理,所述用户对所述事件模型的操作包括鼠标操作和/或键盘操作。
第三方面,本申请提供了一种电子设备,包括:处理器和存储器,所述存储器用于存储计算机程序;所述处理器用于运行所述计算机程序,实现如第一方面所述的内容显示方法。
第四方面,本申请提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机实现如第一方面所述的内容显示方法。
在一种可能的设计中,第四方面中的程序可以全部或者部分存储在与处理器封装在一起的存储介质上,也可以部分或者全部存储在不与处理器封装在一起的存储器上。
附图说明
图1为本申请实施例提供的内容显示方法的流程示意图;
图2为本申请提供的模型关联方法一个实施例的流程示意图;
图3为本申请提供的添加交互触发逻辑的一个实施例的流程示意图;
图4为本申请提供的内容编辑装置的结构示意图;
图5为本申请提供的电子设备结构示意图;
具体实施方式
本申请实施例中,除非另有说明,字符“/”表示前后关联对象是一种或的关系。例如,A/B可以表示A或B。“和/或”描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
需要指出的是,本申请实施例中涉及的“第一”、“第二”等词汇,仅用于区分描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量,也不能理解为指示或暗示顺序。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。此外,“以下至少一项(个)”或者其类似表达,是指的这些项中的任意组合,可以包括单项(个)或复数项(个)的任意组合。例如,A、B或C中的至少一项(个),可以表示:A,B,C,A和B,A和C,B和C,或A、B和C。其中,A、B、C中的每个本身可以是元素,也可以是包含一个或多个元素的集合。
本申请实施例中,“示例的”、“在一些实施例中”、“在另一实施例中”等用于表示作例子、例证或说明。本申请中被描述为“示例”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。
本申请实施例中的“的(of)”、“相应的(corresponding,relevant)”和“对应的(corresponding)”有时可以混用,应当指出的是,在不强调其区别时,所要表达的含义是一致的。本申请实施例中,通信、传输有时可以混用,应当指出的是,在不强调其区别时,其所表达的含义是一致的。例如,传输可以包括发送和/或接收,可以为名词,也可以是动词。
本申请实施例中涉及的等于可以与大于连用,适用于大于时所采用的技术方案,也可以与小于连用,适用于小于时所采用的技术方案。需要说明的是,当等于与大于连用时,不能与小于连用;当等于与小于连用时,不与大于连用。
本文所使用的XR概念并不特指某一种技术,而是泛指VR、AR在内的介于现实世界与虚拟世界给人带来虚拟体验的各种技术的总和。XR是一个新型产业,是当今最火热的技术研究之一。当前的XR研究都集中在感知交互、系统、硬件如各种VR和AR头显,国内外都有很多知名高新科技技术企业或研究机构争相投入到各个细分领域,如国外的的AR眼镜和自然交互技术,MR眼镜和手势交互技术以及实验室的数据手套等,国内的VR眼镜和虚拟现实飞行仿真研究等。尽管国内外对XR的研究很多,相关的细分研究领域也越分越细,针对XR内的开发尤其是XR可视化模块化开发方法的研究非常少,本文的研究内容意义非凡。
通常XR应用的设计开发是需要开发人员具备掌握编程语言的能力,但这就限制了没有软件编程能力的人员参与应用的开发,如产品的设计、策划以及项目经理等,甚至对于很多专业领域具备内容生产能力的用户来说也是一个极大的限制,因此如何实现一个能够使得用户无需掌握任何一门编程语言,仅仅通过鼠标拖拽等“傻瓜”式操作,在即看即所得场景中,方便完成各种专业级XR应用搭建的编辑器已经成为当前XR市场的热点。
尽管XR内容的开发已经有非常成熟的引擎,如Unity3D和Unreal是开发XR内容的两大主流引擎,而要熟悉并应用两个引擎需要一段学习的过程,也即它们对于新手的入行门槛相对较高。尽管,Unreal的蓝图系统已经实现无需编写一行代码便能完成开发,引擎的蓝图使用案例,在图中实现了一个打印“Hello World”的事件,并且将其位置和姿态也自动添加到和父物体对齐。在Unreal中通过创建一个个类似于流程的蓝图,通过并将每个蓝图进行连线关联实现每个蓝图之间的信息沟通。但是,Unreal的蓝图系统使用及其复杂,对编程思想要求极高,其难度也无异于直接使用编程语言进行开发。Unity3D中也有一些插件如PlayMaker也实现了一些可视化的功能,针对各项参数进行实时编辑,然而,这个插件有几个不足的地方,如它主要是针对游戏内的开发,其他的行业内容它无法满足和拓展功能开发的需求,而且它只是一个插件不能单独使用,必须嵌入到Unity3D中才能使用,最后也是最致命的缺陷是所有的功能必须对应一个状态,本来很简单的几句代码就能实行的动作,PlayMaker需要很多状态才能完成,反而增加了使用的负责程度。两大主流引擎可以很快的完成内容的开发,但是针对特定的应用,无论是Unreal的蓝图还是Unity3D的插件编辑完都需要重新编译和发布内容,这也是极大的阻碍XR内容的快速开发和迭代。
基于上述问题,本申请实施例提出了一种内容显示方法,应用于虚拟现实交互。
现结合图1对本申请实施例提供的内容显示方法进行说明。
图1为本申请实施例提供的整体流程图。如图1所示,上述应用场景包括AR,VR,虚拟现实交互,具体包括以下步骤:
步骤101,在编辑界面对数据库中的数据进行编辑。
具体地,所述编辑界面为本领域技术人员使用的常规编辑软件如MFC、CocosCreator等,本申请中的实施例对此不做具体限制,所述编辑是一种得到所述编辑界面发出的指令后对数据库中的数据进行增、删、改、查、插入等操作,本申请中的实施例对此不做具体限制。所述数据库为常规数据库包括:MySQL、Oracle、SqlServer等,本申请中的实施例对此不做具体限制。所述数据库的数据主要分为模型唯一名、流程数据、步骤数据和动作数据,所述的一个流程数据包括一个或多个步骤数据;所述的一个步骤数据包括一个或多个动作数据。所述多个步骤数据可能名称相同,但其对应着的流程数据不同,所代表的意义不同,执行的步骤不同;所述多个动作数据可能名称相同,但其对应的步骤数据不同,所代表的意义不同,执行的动作不同。一个或多个事件的名称会存储到所述数据库中的模型唯一名中,所述数据编辑完后数据进行加载,将所述数据库的数据加载到到系统中,所述数据加载是一个阶段,它负责从所述数据库中抽取后续需要进行处理的流程数据、步骤数据、动作数据,将经过数据转换后,最终按照预定义好的数据库模型,将数据加载到目标系统中,本领域中数据加载的具体方案有很多种,本申请中的实施例对此不作具体限制。
步骤102,将二进制数据转换成对象。
具体地,对数据进行反序列化操作,序列化在计算机科学的数据处理中,是指将数据结构或对象状态转换成可取用格式,以留待后续在相同或另一台计算机环境中,能恢复原先状态的过程。依照序列化格式重新获取字节的结果时,可以利用它来产生与原始对象相同语义的副本。对于许多使用大量引用的复杂对象,这种序列化重建的过程并不容易。面向对象中的对象序列化,并不概括之前原始对象所关系的函数。这种过程也称为对象编组。所述反序列化操作是从一系列字节提取数据结构的反向操作,将数据从二进制字节数据转换成对应的对象,具体地是将流程数据转换成流程对象、步骤数据转换为步骤对象、动作数据转换为动作对象。其中,一个流程对象含有一个或多个步骤对象,不同流程对象下的步骤对象的名称可能相同,但是其代表的含义不同,执行的具体步骤会有形式上的差异;一个步骤对象含有一个或多个动作对象,不同步骤对象下的动作对象的名称可能相同,但其代表的含义不同,执行的具体动作也会有差异,本申请中的实施例对反序列化操作不作具体限制。
步骤103,将转换后的对象进行关联化操作。
具体地,是进行所述对象的模板初始化,将不同的动作对象关联起来,使所述不同的动作对象能够具有先后执行的顺序,在上一个动作对象完成所述初始化操作后,能自动的对下一个动作对象接着进行处理,使所述不同的动作对象具有关联性,通过所述模板初始化过程,使所述动作对象具有统一性,在所述数据库中修改数据时,解决了因名称的差异导致动作对象无法和模型库中的模型进行匹配的问题,便于数据的输入。其中动作对象包含必要的处理函数:开始、准备和停止以及完成等,开始即该内容正在运行,准备表示该内容正在准备开始运行,停止表示内容被迫停止或中断,完成表示该内容执行结束,此时会执行下一个动作的准备,如此内容的执行流程就能形成一个紧密关联;初始化的时候会将前后的流程对象、步骤对象以及动作对象进行前后关联,方便后续自动顺序执行,即上一个内容完成后会直接进入下一个内容,所述处理函数“开始”、“准备”、“停止”、“完成”只是抽象的数据名称,本申请中的实施例,对此处理函数不作具体的限制。
步骤104,对处理后的对象进行模型关联的过程。
具体地,模型库是一种独立的文件,是整个交互内容的主体部分,一个模型库中会包含大量预设的模型,一个所述模型会包含多个网格,动画以及贴图,所述网格是指所述模型在编辑界面中所占的空间大小,所述动画是指模型库中预设可以完成指定动作的动画,所述贴图是指模型库中预设的样式图片。关联过程中,首先要将模型文件进行打包压缩成统一格式的文件,便于后续其中模型的命名必须唯一,并且对应到数据库中模型唯一名。打包之后的文件再程序运行的时候会通过异步加载的方式进行全部的内容的加载,所述异步加载是为了提高模型库加载的效率。之后对内容反序列化的对象进行唯一名循环遍历找到对应的模型文件进行实例化,所述唯一名循环是为了能让每个动作对象能够成功的匹配到相应的模型,不会在匹配过程中出现混乱错误的情况,所述实例化是指经过处理后的动作对象能够对应的转换为在编辑界面中显示的模型,能够响应后续的人机交互动作。除了模型自带的动画外还有一部分用户自定义的运动动画,分为旋转、位移以及缩放,采用这三个动画的任意多个组合可以实现绝大多数复杂的模型自动运动动画。通过所述模型关联过程将数据库中转换后的对象与模型库中的模型一一对应起来,通过指定的对象生成对应的模型,所述模型还能包括动作、图片等形式,本申请中的实施例对此不做具体的限制。
步骤105,添加交互逻辑的触发过程。
具体地,为了实现在可视化界面中对预设模型对象进行操作还需要添加交互触发事件,所述交互触发事件在本领域中的常规技术手段主要为鼠标事件和键盘事件,所述鼠标事件主要包括悬浮操作、单击操作、拖拽操作和双击操作,键盘事件主要包括按住操作、单击操作和多键击中操作。所述预设模型对象包括第一模型对象和第二模型对象,其中,第一模型对象可由所述鼠标操作事件独立的操作,所述第一模型对象可由鼠标操作进行拖拽、转向、旋转、双击选中、单击按住悬浮等一系列可视化的操作。所述鼠标事件可以击中模型的其中一个必要条件是需要有碰撞体,所述碰撞体的范围是模型对象所覆盖的整体范围,当鼠标击中该模型对象的范围时,会产生所述碰撞体使得鼠标操作能够控制第一模型对象。当用户想实现第一模型对象与第二模型对象交互时,首先需要使用鼠标操作第一模型对象,选中第一模型对象后将其拖拽到第二模型上,使得第一模型对象与第二模型对象进行网格合并,所述网格合并是指两个模型对象的网格在重叠时可以融合成一个整体。合并后的两个对象形成一个第三模型对象,所述鼠标操作可以对第三模型对象进行整体的移位、旋转等操作,所述第三模型对象的碰撞体范围是第一模型对象和第二模型对象整体所覆盖的范围,当鼠标击中该模型对象的任意范围时,会产生所述碰撞体使得鼠标操作能够控制第三模型对象。所述第一模型对象、第二模型对象、第三模型对象只是抽象的名称,本申请中的实施例对此不作具体的限制。相应的键盘事件对所述第一模型对象、第二模型对象、第三模型对象的交互逻辑与鼠标事件相同,在本领域中还有许多手段能实现人机交互,本申请中的实施例对此不做具体的限制。
如图2所示为本申请提供的模型关联方法的一个实施例的流程示意图,具体流程如下:
步骤201,模型文件打包压缩。
具体地,模型库是一种独立的文件,是整个交互内容的主体部分,一个模型库中会包含大量预设的模型,一个所述模型会包含多个网格,动画以及贴图,所述网格是指所述模型在编辑界面中所占的空间大小,所述动画是指模型库中预设可以完成指定动作的动画,所述贴图是指模型库中预设的样式图片。关联过程中,首先要将模型文件进行打包压缩成统一格式的文件,便于后续将对象转换为所述模型,其中模型的命名必须唯一,并且对应到数据库中模型唯一名。
步骤202,加载模型文件并循环数据库。
具体地,打包之后的文件再程序运行的时候会通过异步加载的方式进行全部的内容的加载,所述异步加载是为了提高模型库加载的效率。之后对内容反序列化的对象进行唯一名循环遍历找到对应的模型文件,所述唯一名循环是为了能让每个动作对象能够成功的匹配到相应的模型,不会在匹配过程中出现混乱错误的情况。
步骤203,将对象实例化。
所述实例化是指经过处理后的动作对象能够对应的转换为在编辑界面中显示的模型,能够响应后续的人机交互动作。除了模型自带的动画外还有一部分用户自定义的运动动画,分为旋转、位移以及缩放,采用这三个动画的任意多个组合可以实现绝大多数复杂的模型自动运动动画。通过所述模型关联过程将数据库中转换后的对象与模型库中的模型一一对应起来,通过指定的对象生成对应的模型,所述模型还能包括动作、图片等形式,本申请中的实施例对此不做具体的限制。
接着,结合图3对本申请实施例提供的内容显示方法进行进一步说明。为了进一步对可视化数据内容进行编辑,还可以在模型文件实现对对象的转换后,添加交互触发逻辑。
图3为本申请提供的内容显示方法添加交互触发逻辑的流程示意图,具体流程如下:
步骤301,对模型文件添加交互触发事件。
具体地,为了实现在可视化界面中对模型对象进行操作还需要添加交互触发事件,所述交互触发事件在本领域中的常规技术手段主要为鼠标事件和键盘事件,所述鼠标事件主要包括悬浮操作、单击操作、拖拽操作和双击操作,键盘事件主要包括按住操作、单击操作和多键击中操作。所述模型对象包括第一模型对象和第二模型对象,其中,第一模型对象可由所述鼠标操作事件独立的操作,所述第一模型对象可由鼠标操作进行拖拽、转向、旋转、双击选中、单击按住悬浮等一系列可视化的操作。
步骤302,将多个模型进行网格合并。
所述模型对象包括第一模型对象和第二模型对象,其中,第一模型对象可由所述鼠标操作事件独立的操作,所述第一模型对象可由鼠标操作进行拖拽、转向、旋转、双击选中、单击按住悬浮等一系列可视化的操作。当用户想实现第一模型对象与第二模型对象交互时,首先需要使用鼠标操作第一模型对象,选中第一模型对象后将其拖拽到第二模型上,使得第一模型对象与第二模型对象进行网格合并,所述网格合并是指两个模型对象的网格在重叠时可以融合成一个整体。合并后的两个对象形成一个第三模型对象,所述鼠标操作可以对第三模型对象进行整体的移位、旋转等操作,所述第一模型对象、第二模型对象、第三模型对象只是抽象的名称,本申请中的实施例对此不作具体的限制。
步骤303,为所述模型文件添加碰撞体。
具体的,所述鼠标事件可以击中模型的其中一个必要条件是需要有碰撞体,所述碰撞体的范围是模型对象所覆盖的整体范围,当鼠标击中该模型对象的范围时,会产生所述碰撞体使得鼠标操作能够控制第一模型对象。所述第三模型对象的碰撞体范围是第一模型对象和第二模型对象整体所覆盖的范围,当鼠标击中该模型对象的任意范围时,会产生所述碰撞体使得鼠标操作能够控制第三模型对象。所述第一模型对象、第二模型对象、第三模型对象只是抽象的名称,本申请中的实施例对此不作具体的限制。相应的键盘事件对所述第一模型对象、第二模型对象、第三模型对象的交互逻辑与鼠标事件相同,在本领域中还有许多手段能实现人机交互,本申请中的实施例对此不做具体的限制。
图4为本申请提供了一种内容显示装置,应用于电子设备,所述电子设备包含数据库,所述数据库中包含一个或多个事件的数据,所述内容显示装置包括:
转化模块,用于将所述一个或多个事件的数据转化为动作对象,
生成模块,用于基于所述动作对象及预设模型生成事件模型,所述事件模型包含一个或多个动作;
显示模块,用于响应于用户对所述事件模型的操作,在所述电子设备的显示界面显示所述一个或多个动作。
其中一种可能的实现方式中,所述生成模块还用于将所述动作对象加载至所述预设模型中,生成事件模型,所述预设模型的名称与所述动作对象的事件名称相对应。
其中一种可能的实现方式中,所述转化模块还用于将所述一个或多个事件的数据转化为一个或多个步骤对象,其中,一个步骤对象包括一个或多个动作对象。
其中一种可能的实现方式中,所述转化模块还用于将所述一个或多个事件的数据转化为一个或多个流程对象,其中,一个流程对象包括一个或多个步骤对象。
其中一种可能的实现方式中,所述显示模块还用于响应于用户对所述事件模型的操作,在所述电子设备的显示界面显示所述一个或多个预设模型。
其中一种可能的实现方式中,所述转化模块还用于将所述数据库中的数据名称与模型的名称对应起来,将所述数据库中的数据转换成所述模型。
其中一种可能的实现方式中,所述内容显示装置中还包括:
交互触发模块,用于对模型文件与触发事件进行交互处理,所述用户对所述事件模型的操作包括鼠标操作和/或键盘操作。
下面结合图5进一步介绍本申请实施例中提供的示例性电子设备。图5示出了电子设备1000的结构示意图。
上述电子设备1000可以包括:至少一个处理器;以及与上述处理器通信连接的至少一个存储器,其中:上述存储器存储有可被上述处理器执行的程序指令,处理器调用上述程序指令能够执行本申请所示实施例提供的界面显示方法。
图5示出了适用于实现本申请实施方式的示例性电子设备1000的框图。图5显示的电子设备1000仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图5所示,电子设备1000以通用计算设备的形式表现。电子设备1000的组件可以包括但不限于:一个或者多个处理器1010,存储器1020,连接不同系统组件(包括存储器1020和处理器1010)的通信总线1040以及通信接口1030。
通信总线1040表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
电子设备1000典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器1020可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)和/或高速缓存存储器。电子设备可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read Only Memory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read Only Memory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与通信总线1040相连。存储器1020可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块的程序/实用工具,可以存储在存储器1020中,这样的程序模块包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块通常执行本申请所描述的实施例中的功能和/或方法。
电子设备1000也可以与一个或多个外部设备(例如键盘、指向设备、显示器等)通信,还可与一个或者多个使得用户能与该电子设备交互的设备通信,和/或与使得该电子设备能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过通信接口1030进行。并且,电子设备1000还可以通过网络适配器(图5中未示出)与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信,上述网络适配器可以通过通信总线1040与电子设备的其它模块通信。应当明白,尽管图5中未示出,可以结合电子设备1000使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、磁盘阵列(Redundant Arrays of Independent Drives;以下简称:RAID)系统、磁带驱动器以及数据备份存储系统等。
处理器1010通过运行存储在存储器1020中的程序,从而执行各种功能应用以及数据处理,例如实现本申请实施例提供的方法。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备1000的结构限定。在本申请另一些实施例中,电子设备1000也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
以上各实施例中,涉及的处理器可以例如包括CPU、DSP、微控制器或数字信号处理器,还可包括GPU、嵌入式神经网络处理器(Neural-network Process Units;以下简称:NPU)和图像信号处理器(Image Signal Processing;以下简称:ISP),该处理器还可包括必要的硬件加速器或逻辑处理硬件电路,如ASIC,或一个或多个用于控制本申请技术方案程序执行的集成电路等。此外,处理器可以具有操作一个或多个软件程序的功能,软件程序可以存储在存储介质中。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行本申请所示实施例提供的方法。
本申请实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,当其在计算机上运行时,使得计算机执行本申请所示实施例提供的方法。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示单独存在A、同时存在A和B、单独存在B的情况。其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b和c中的至少一项可以表示:a,b,c,a和b,a和c,b和c或a和b和c,其中a,b,c可以是单个,也可以是多个。
本领域普通技术人员可以意识到,本文中公开的实施例中描述的各单元及算法步骤,能够以电子硬件、计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,任一功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory;以下简称:ROM)、随机存取存储器(Random Access Memory;以下简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。本申请的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种内容显示方法,应用于电子设备,其特征在于,所述电子设备包含数据库,所述数据库中包含一个或多个事件的数据,所述方法包括:
将所述一个或多个事件的数据转化为动作对象,
基于所述动作对象及预设模型生成事件模型,所述事件模型包含一个或多个动作;
响应于用户对所述事件模型的操作,在所述电子设备的显示界面显示所述一个或多个动作。
2.根据权利要求1所述的内容显示方法,其特征在于,所述基于所述动作对象及预设模型生成事件模型具体包括:
将所述动作对象加载至所述预设模型中,生成事件模型,所述预设模型的名称与所述动作对象的事件名称相对应。
3.根据权利要求1所述的内容显示方法,其特征在于,将所述一个或多个事件的数据转化为动作对象包括:
将所述一个或多个事件的数据转化为一个或多个步骤对象,其中,一个步骤对象包括一个或多个动作对象。
4.根据权利要求3所述的内容显示方法,其特征在于,所述将所述一个或多个事件的数据转化为一个或多个步骤对象包括:
将所述一个或多个事件的数据转化为一个或多个流程对象,其中,一个流程对象包括一个或多个步骤对象。
5.根据权利要求1所述的内容显示方法,其特征在于,所述方法还包括:
响应于用户对所述事件模型的操作,在所述电子设备的显示界面显示所述一个或多个预设模型。
6.根据权利要求1所述的内容显示方法,其特征在于,所述方法还包括:
将所述数据库中的数据名称与模型的名称对应起来,将所述数据库中的数据转换成所述模型。
7.根据权利要求1所述的内容显示方法,其特征在于:
所述用户对所述事件模型的操作包括鼠标操作和/或键盘操作。
8.根据权利要求7所述的内容显示方法,其特征在于:
所述鼠标操作包括悬浮操作、单击操作或双击操作。
9.根据权利要求7所述的内容显示方法,其特征在于:
所述键盘操作包括按住操作、单击操作和多键击中操作。
10.根据权利要求3所述的内容显示方法,其特征在于:
所述一个或多个动作对象具有先后执行顺序。
11.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器用于存储计算机程序;所述处理器用于运行所述计算机程序,实现如权利要求1-10任一项所述的内容显示方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序在计算机上运行时,实现如权利要求1-10任一所述的内容显示方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211377816 | 2022-11-04 | ||
CN2022113778167 | 2022-11-04 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117111919A true CN117111919A (zh) | 2023-11-24 |
Family
ID=88797153
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211696484.9A Pending CN117111919A (zh) | 2022-11-04 | 2022-12-28 | 内容显示方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117111919A (zh) |
-
2022
- 2022-12-28 CN CN202211696484.9A patent/CN117111919A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11003422B2 (en) | Methods and systems for visual programming using polymorphic, dynamic multi-dimensional structures | |
Myers | Taxonomies of visual programming and program visualization | |
Price et al. | A principled taxonomy of software visualization | |
US7548238B2 (en) | Computer graphics shader systems and methods | |
Gould | Complete Maya Programming: An extensive guide to MEL and C++ API | |
Stasko | Using direct manipulation to build algorithm animations by demonstration | |
KR100928192B1 (ko) | 내장형 디바이스에서의 3d 콘텐츠에 대한 오프라인 최적화파이프라인 | |
Plimmer et al. | A toolkit approach to sketched diagram recognition | |
Parker | Systems Aspects of Visualization Applications | |
EP2090994A2 (en) | System, method and computer program product for computer modeling with generative components | |
Autin et al. | uPy: a ubiquitous CG Python API with biological-modeling applications | |
CN117111919A (zh) | 内容显示方法、电子设备及存储介质 | |
Rieder et al. | A methodology to specify three-dimensional interaction using Petri Nets | |
Kajler | User interfaces for symbolic computation: a case study | |
Berinstein et al. | Game development tool essentials | |
Von Pilgrim et al. | Eclipse GEF3D: bringing 3d to existing 2d editors | |
JP7349453B2 (ja) | 異種データのためのスケーラブル変換処理ユニット | |
CN118012408A (zh) | 基于MATLAB/Simulink的图形化并行计算框架代码自动生成方法及系统 | |
Qian et al. | Rapid Development of Virtual Environments: A systematic approach for interactive design of 3D graphics | |
Qian et al. | Rapid Development of Virtual Environments | |
Huang et al. | Design and Implementation of Virtual Reality Geometric Modeling in Apla+ VR | |
CN109032574A (zh) | 一种面向多操作对象的编程系统 | |
Kopylov | Expanding the Functionality of Optical CAD Using the Python Scripting Language | |
Nishi et al. | Development Of A Visual Tool For Dynamic Simulation Program HVACSIM+ | |
Cox et al. | An evaluation of the Pavane visualization system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |