CN114416266A - 组件可视化方法、装置、计算机设备及存储介质 - Google Patents
组件可视化方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN114416266A CN114416266A CN202210093614.3A CN202210093614A CN114416266A CN 114416266 A CN114416266 A CN 114416266A CN 202210093614 A CN202210093614 A CN 202210093614A CN 114416266 A CN114416266 A CN 114416266A
- Authority
- CN
- China
- Prior art keywords
- component
- class
- virtual
- virtual test
- test
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- 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/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
Abstract
本申请提供一种组件可视化方法、装置、计算机设备及存储介质,涉及虚拟试验技术领域。该方法包括:获取虚拟试验组件的类对象,其中,类对象包括:虚拟试验组件的类属性和类方法,将类对象反射生成虚拟试验组件的实例对象,其中,实例对象包括:类属性对应的实例属性和类方法对应的实例方法,在所述虚拟试验平台的规划区域上生成图形节点对象,根据实例方法,生成类方法对应的菜单项对象,将菜单项对象和实例属性映射至图形节点对象,以采用图形节点对象在虚拟试验平台上显示虚拟试验组件。本申请可以在虚拟试验平台上实现虚拟试验组件的动态扩展,提高虚拟试验平台的可扩展性。
Description
技术领域
本发明涉及虚拟试验技术领域,具体而言,涉及一种组件可视化方法、装置、计算机设备及存储介质。
背景技术
近年来,随着科学技术的不断发展,武器装备试验和飞机飞行试验需求和要求不断提高。
在现有的虚拟试验平台中,在平台的开发阶段就已经将虚拟试验组件与平台进行集成,该平台可以满足试验设备种类较少的情况下,虚拟试验任务的要求。
但是随着试验设备种类的日益增多,由于虚拟试验平台的可扩展性不强,需要修改虚拟试验平台的代码以在平台中增加虚拟试验组件,且需要通过对代码进行反复修改试验,以确保新增的虚拟试验组件可以满足试验需求,导致新增虚拟试验组件的过程耗时耗力,不利于平台的扩展应用。
发明内容
本发明的目的在于,针对上述现有技术中的不足,提供一种组件可视化方法、装置、计算机设备及存储介质,以便在虚拟试验平台上实现虚拟试验组件的动态扩展,提高虚拟试验平台的可扩展性。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请实施例提供了一种组件可视化方法,应用于虚拟试验平台,所述方法包括:
获取虚拟试验组件的类对象,其中,所述类对象包括:所述虚拟试验组件的类属性和类方法;
将所述类对象反射生成所述虚拟试验组件的实例对象,其中,所述实例对象包括:所述类属性对应的实例属性和所述类方法对应的实例方法;
在所述虚拟试验平台的规划区域上生成图形节点对象;
根据所述实例方法,生成所述实例方法对应的菜单项对象;
将所述菜单项对象和所述实例属性映射至所述图形节点对象,以采用所述图形节点对象在所述虚拟试验平台上显示所述虚拟试验组件。
可选的,所述获取虚拟试验组件的类对象,包括:
根据所述虚拟试验组件的组件类型,从预设的组件类对象集合中获取所述组件类型对应的类对象为所述虚拟试验组件的类对象。
可选的,所述根据所述虚拟试验组件的组件类型,从预设的组件类对象集合中获取所述组件类型对应的类对象为所述虚拟试验组件的类对象之前,所述方法还包括:
获取所述虚拟试验组件的类文件,其中,所述类文件包括:所述虚拟试验组件的组件属性和操作方法;
将所述类文件加载为所述类对象,存储在所述组件类对象集合中。
可选的,所述在所述虚拟试验平台的规划区域上生成图形节点对象之后,所述方法还包括:
根据所述虚拟试验组件的组件类型,获取所述组件类型对应的图标为组件图标;
将所述组件图标注入所述图形节点对象,以根据所述组件图标采用所述图形节点对象显示所述虚拟试验组件。
可选的,所述方法还包括:
接收用户针对所述虚拟试验组件的菜单项对象的选择操作;
根据所述选择操作所选中的目标菜单项对象,从所述类对象中获取所述目标菜单项对象对应的目标类方法;
执行所述目标类方法。
可选的,所述获取所述虚拟试验组件的类文件,包括:
根据试验设备的属性信息和设备功能,利用元模型生成所述试验设备的类图;
利用代码转换器,将所述试验设备的类图转换为所述虚拟试验组件的试验训练定义语言;
将所述试验训练定义语言映射为所述虚拟试验平台对应的虚拟试验组件代码;
获取用户针对所述试验设备的属性信息输入的填充操作方法;
根据所述虚拟试验组件代码和所述填充操作方法,生成所述组件类文件。
可选的,所述方法还包括:
通过服务器获取所述试验设备的属性信息;
响应针对所述属性信息的修改操作,修改所述试验设备的属性信息,以使得所述试验设备从所述服务器中获取修改后的属性信息,更新所述属性信息。
第二方面,本申请实施例还提供一种组件可视化装置,应用于虚拟试验平台,所述装置包括:
类对象获取模块,用于获取虚拟试验组件的类对象,其中,所述类对象包括:所述虚拟试验组件的类属性和类方法;
实例对象生成模块,用于将所述类对象反射生成所述虚拟试验组件的实例对象,其中,所述实例对象包括:所述类属性对应的实例属性和所述类方法对应的实例方法;
图形节点对象生成模块,用于在所述虚拟试验平台的规划区域上生成图形节点对象;
菜单项对象生成模块,用于根据所述实例方法,生成所述实例方法对应的菜单项对象;
映射显示模块,用于将所述菜单项对象和所述实例属性映射至所述图形节点对象,以采用所述图形节点对象在所述虚拟试验平台上显示所述虚拟试验组件。
可选的,所述类对象获取模块,具体用于根据所述虚拟试验组件的组件类型,从预设的组件类对象集合中获取所述组件类型对应的类对象为所述虚拟试验组件的类对象。
可选的,所述装置还包括:
类文件获取模块,用于获取所述虚拟试验组件的类文件,其中,所述类文件包括:所述虚拟试验组件的组件属性和操作方法;
类对象加载模块,用于将所述类文件加载为所述类对象,存储在所述组件类对象集合中。
可选的,所述装置还包括:
组件图标获取模块,用于根据所述虚拟试验组件的组件类型,获取所述组件类型对应的图标为组件图标;
图标注入模块,用于将所述组件图标注入所述图形节点对象,以根据所述组件图标采用所述图形节点对象显示所述虚拟试验组件。
可选的,所述装置还包括:
选择模块,用于接收用户针对所述虚拟试验组件的菜单项对象的选择操作;
类方法获取模块,用于根据所述选择操作所选中的目标菜单项对象,从所述类对象中获取所述目标菜单项对象对应的目标类方法;
执行模块,用于执行所述目标类方法。
可选的,所述类文件获取模块,包括:
类图生成单元,用于根据试验设备的属性信息和设备功能,利用元模型生成所述试验设备的类图;
代码转换单元,用于利用代码转换器,将所述试验设备的类图转换为所述虚拟试验组件的试验训练定义语言;
代码映射单元,用于将所述试验训练定义语言映射为所述虚拟试验平台对应的虚拟试验组件代码;
填充操作方法获取单元,用于获取用户针对所述试验设备的属性信息输入的填充操作方法;
类文件生成单元,用于根据所述虚拟试验组件代码和所述填充操作方法,生成所述组件类文件。
可选的,所述装置还包括:
属性信息获取模块,用于通过服务器获取所述试验设备的属性信息;
属性信息修改模块,用于响应针对所述属性信息的修改操作,修改所述试验设备的属性信息,以使得所述试验设备从所述服务器中获取修改后的属性信息,更新所述属性信息。
第三方面,本申请实施例还提供一种计算机设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的程序指令,当所述计算机设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述程序指令,以执行如上述实施例任一所述的组件可视化方法的步骤。
第四方面,本申请实施例还提供一种计算机可读存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上述实施例任一所述的组件可视化方法的步骤。
本申请的有益效果是:
本申请提供一种组件可视化方法、装置、计算机设备及存储介质,应用于虚拟试验平台,该方法包括:获取虚拟试验组件的类对象,其中,类对象包括:虚拟试验组件的类属性和类方法,将类对象反射生成虚拟试验组件的实例对象,其中,实例对象包括:类属性对应的实例属性和类方法对应的实例方法,在所述虚拟试验平台的规划区域上生成图形节点对象,根据实例方法,生成类方法对应的菜单项对象,将菜单项对象和实例属性映射至图形节点对象,以采用图形节点对象在虚拟试验平台上显示虚拟试验组件。通过本申请可以将虚拟试验组件和虚拟试验平台解耦,以在试验需要时将虚拟试验组件加载至虚拟试验平台中,无需对虚拟试验平台进行代码修改,实现虚拟试验平台上虚拟试验组件的动态扩展,提高了虚拟试验平台的可扩展性,提高了虚拟试验效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种组件可视化方法的流程示意图;
图2为本申请实施例提供的一种虚拟试验平台的界面示意图;
图3为本申请实施例提供的另一种虚拟试验平台的界面示意图;
图4为本申请实施例提供的另一种组件可视化方法的流程示意图;
图5为本申请实施例提供的又一种组件可视化方法的流程示意图;
图6为本申请实施例提供的一种组件可视化方法的全过程示意图;
图7为本申请实施例提供的还一种组件可视化方法的流程示意图;
图8为本申请实施例提供的又另一种组件可视化方法的流程示意图;
图9本申请实施例提供的又再一种组件可视化方法的流程示意图;
图10为本申请实施例提供的一种虚拟试验平台与试验设备通信的结构示意图;
图11为本申请实施例提供的一种组件可视化装置的结构示意图;
图12为本申请实施例提供的计算机设备的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
在对本申请的方案进行详细说明之前,先对本申请所应用的虚拟试验平台进行解释说明。虚拟试验平台运行在计算机设备上,是针对试验环境和试验设备进行模拟的平台,在试验设备的试验过程中,涉及到大区域多地区的试验环境,试验环境跨度大、距离远、相互独立,各试验环境中的试验设备资源很难完成统一部署、统一指挥和联合试验。因此,通过构建虚拟试验平台能够将多个不同地区的试验环境互联起来统一管理指挥和部署,并能够实现不同试验场中资源的重复利用、信息共享等。
为了在虚拟试验平台中引入试验设备资源,本申请提供一种组件可视化方法、装置、计算机设备及存储介质,以实现将试验设备以虚拟试验组件的形式动态引入虚拟试验平台。
以下对本申请提供的一种组件可视化方法、装置、计算机设备及存储介质进行详细说明。
请参考图1,为本申请实施例提供的一种组件可视化方法的流程示意图,如图1所示,该方法包括:
S20:获取虚拟试验组件的类对象,其中,类对象包括:虚拟试验组件的类属性和类方法。
本实施例中,预先根据试验设备的属性信息和设备功能,通过代码编写生成虚拟试验组件的类对象,虚拟试验组件用于在虚拟试验平台中表示试验设备,虚拟试验组件的类对象中包括:虚拟试验组件的类属性和类方法,其中,类属性表示试验设备的属性信息,类方法表示试验设备的设备功能以及属性信息的填充操作方法,属性信息的填充操作方法为预先针对属性信息输入的操作方法,用于表示针对属性信息执行的方法,例如属性信息的修改等。虚拟试验组件的类对象存储在预设位置处,当需要在虚拟试验平台上生成试验设备对应的虚拟试验组件时,可以从预设位置处获取虚拟试验组件的类对象。
S30:将类对象反射生成虚拟试验组件的实例对象,其中,实例对象包括:类属性对应的实例属性和类方法对应的实例方法。
本实施例中,类对象中规定了虚拟试验组件所具有的类属性,但是在虚拟试验平台上无法通过类对象为类属性进行赋值,或者更改类属性的属性信息,需要将类对象反射为实例对象,以将类属性转换为实例属性,将类方法转换为实例方法,以实现通过实例属性实现为虚拟试验组件的属性进行复制。
在一种可选实施方式中,可以通过newInstance()方法将类对象反射为实例对象。
示例的,请参考图2,为本申请实施例提供的一种虚拟试验平台的界面示意图,如图2所示,规划区域的虚拟试验组件为虚拟雷达组件,虚拟雷达组件具有name属性,虚拟雷达组件的类对象只规定了虚拟雷达组件具有name属性,反射生成实例对象以后,可以在属性修改区域内对name属性进行赋值,如将虚拟雷达组件的name设置为雷达1。
S40:在虚拟试验平台的规划区域上生成图形节点对象。
本实施例中,为了便于采用虚拟试验组件进行虚拟试验,需要在虚拟试验平台中显示虚拟试验组件,本实施例对每个实例对象在虚拟试验平台的规划区域生成一个图形节点对象,图形节点对象用于在规划区域表示虚拟试验组件的对象,每个图形节点对象具有对应的实例对象。
在一种可选实施方式中,可以对每个实例对象生成一个基于Zest框架的图形节点对象。
S50:根据实例方法,生成实例方法对应的菜单项对象。
本实施例中,从实例对象中获取虚拟试验组件的所有实例方法,为每个实例方法生成对应的菜单项对象,并为每个菜单项对象设置反射调用机制,即在规划区域选择要执行的菜单项对象时,利用反射调用机制从类对象中获取菜单项对象对应的类方法,以执行对应的类方法。
示例的,请参考图3,为本申请实施例提供的另一种虚拟试验平台的界面示意图,如图3所示,虚拟GPS(Global Positioning System,全球定位系统)设备组件具有多个菜单项对象,如开机、关机、记录数据、导入数据、接收开、接收关,每个菜单项对象对应试验设备的一个设备功能。
S60:将菜单项对象和实例属性映射至图形节点对象,以采用图形节点对象在虚拟试验平台上显示虚拟试验组件。
本实施例中,前述S30-S50分别生成了虚拟试验组件的实例属性、图形用户节点和菜单项对象,需要将菜单项对象和实例属性映射至图形节点对象,以建立图形用户节点与实例属性和菜单项对象之间的对应关系,以便在虚拟试验平台上采用图形用户节点显示虚拟试验组件,该图形用户节点具有虚拟试验组件对应的试验设备的属性信息和设备功能。
在一种可选实施方式中,上述S20包括:
根据虚拟试验组件的组件类型,从预设的组件类对象集合中获取组件类型对应的类对象为虚拟试验组件的类对象。
本实施例中,预设的组件类对象集合中包括多种组件类型的类对象,在虚拟试验平台的组件类对象显示区域显示多种组件类型,用户从组件类型显示区域中选择试验需要的组件类型,以根据用户选择的虚拟试验组件的组件类型,从组件类对象集合中获取组件类型对应的类对象作为虚拟试验组件的类对象。
示例的,如图2或图3所示,组件类对象集合中显示有多种组件类型,具体可以采用每种组件类型对应的组件图标表示组件类型。
本申请实施例提供的组件可视化方法,应用于虚拟试验平台,该方法包括:获取虚拟试验组件的类对象,其中,类对象包括:虚拟试验组件的类属性和类方法,将类对象反射生成虚拟试验组件的实例对象,其中,实例对象包括:类属性对应的实例属性和类方法对应的实例方法,在虚拟试验平台的规划区域上生成图形节点对象,根据实例方法,生成类方法对应的菜单项对象,将菜单项对象和实例属性映射至图形节点对象,以采用图形节点对象在虚拟试验平台上显示虚拟试验组件。通过本申请实施例可以将虚拟试验组件和虚拟试验平台解耦,以在试验需要时将虚拟试验组件加载至虚拟试验平台中,无需对虚拟试验平台进行代码修改,实现虚拟试验平台上虚拟试验组件的动态扩展,提高了虚拟试验平台的可扩展性,提高了虚拟试验效率。
在上述实施例的基础上,本申请实施例还提供一种组件可视化方法。请参考图4,为本申请实施例提供的另一种组件可视化方法的流程示意图,如图4所示,在从组件类对象集合中获取类对象之间,该方法还包括:
S11:获取虚拟试验组件的类文件,其中,类文件包括:虚拟试验组件的组件属性和操作方法。
本实施例中,预先根据试验设备的属性信息和设备功能,通过代码编写生成虚拟试验组件的类文件,类文件中包括:虚拟试验组件的组件属性和操作方法,将虚拟试验组件的类文件存储在预设路径下。在虚拟试验平台启动后,将预设路径载入虚拟试验平台中,以对预设路径下的类文件进行扫描,获取虚拟试验组件的类文件。
S12:将类文件加载为类对象,存储在组件类对象集合中。
本实施例中,由于虚拟试验平台无法直接从类文件中识别出虚拟试验组件,需要将类文件加载为类对象,虚拟试验平台外才能识别出虚拟试验组件,也才能将类对象转化为实例对象。在将类文件加载为类对象后,将类对象存储在组件类对象集合中,以便可以根据组件类型从组件类对象集合中获取虚拟试验组件的类对象。
在一种可选实施方式中,可以采用Class.forName()方法将类文件加载为类对象。
本申请实施例提供的组件可视化方法,获取虚拟试验组件的类文件,其中,类文件包括:虚拟试验组件的组件属性和操作方法,将类文件加载为类对象,存储在组件类对象集合中。本申请实施例通过对虚拟试验组件和虚拟试验平台解耦,以在试验需要时,通过将类文件加载为类对象,以将虚拟试验组件加载至虚拟试验平台中,实现虚拟试验平台上虚拟试验组件的动态扩展,提高了虚拟试验平台的可扩展性。
在上述实施例的基础上,本申请实施例还提供一种组件可视化方法。请参考图5,为本申请实施例提供的又一种组件可视化方法的流程示意图,如图5所示,在S30之后,该方法还包括:
S71:根据虚拟试验组件的组件类型,获取组件类型对应的图标为组件图标。
本实施例中,预设路径中除了存储虚拟试验组件的类文件外,还存储有虚拟试验组件的组件图标,类文件和组件图标共同构成完整的虚拟试验组件。除了从预设路径中将类文件加载至虚拟试验平台外,还根据类文件确定组件类型,并将组件类型和组件图标的地址构成键值对,其中组件类型为键,组件图标的地址为值。
用户从组件类型显示区域中选择试验需要的组件类型,以根据用户选择的虚拟试验组件的组件类型,以及键值对,确定组件类型对应的组件图标的地址,从组件图标的地址中获取组件图标以及组件图标的名称。
S72:将组件图标注入图形节点对象,以根据组件图标采用图形节点对象显示虚拟试验组件。
本实施例中,为了使每个图形节点对象可以按照虚拟试验组件的组件图标进行显示,将组件图标的名称和组件图标设置到图形节点对象的相应属性中,以使得图形节点对象以组件图标显示虚拟试验组件,从而完成虚拟试验组件的可视化。
在一种可选实施方式中,预设路径中存储有虚拟试验组件的两种大小不同的组件图标,在虚拟试验平台启动后,将预设路径载入虚拟试验平台中,对预设路径下的小组件图标进行扫描,在组件类对象显示区域按照小组件图标显示组件类型,将大组件图标设置到图形节点对象的相应属性中。
本申请实施例提供的组件可视化方法,根据虚拟试验组件的组件类型,获取组件类型对应的图标为组件图标,将组件图标注入图形节点对象,以根据组件图标采用图形节点对象显示虚拟试验组件。通过本申请实施例可以使得每个虚拟试验组件在虚拟试验平台中按照响应的组件图标进行显示,便于用户根据组件图标确定虚拟试验组件的类型,提高试验效率。
在上述实施例的基础上,请参考图6,为本申请实施例提供的一种组件可视化方法的全过程示意图,如图6所示,虚拟试验平台启动后,加载虚拟试验组件所在的预设路径,从预设路径中扫描得到类(Class)文件和组件图标,将类文件采用Class.forName()方法加载为类(Class)对象,存储在组件类对象集合中,将组件图标的地址和组件类型构成的键值对保存在哈希表(HashMap)中。
根据用户输入的组件类型,从组件类对象集合中获取组件类型对应的类(Class)对象,将类(Class)对象通过newInstance()方法反射为实例(Object)对象,利用getDeclaredMethod反射方法从类对象中获取到要执行的类方法(Method),并为实例对象中的每个实例方法生成对应的菜单项(MenuItem)对象,将类方法注入对应的菜单项对象。同时,对每个实例对象在虚拟试验平台的规划区域生成一个图形节点(GraphNode)对象,将实例属性(data属性)和组件图标的Image属性注入图形节点对象,对图形节点对象和菜单项对象进行映射,以在虚拟试验平台上显示虚拟试验组件。
在上述实施例的基础上,本申请实施例还提供一种组件可视化方法,请参考图7,为本申请实施例提供的还一种组件可视化方法的流程示意图,如图7所示,该方法还包括:
S81:接收用户针对虚拟试验组件的菜单项对象的选择操作。
本实施例中,用户通过在虚拟试验平台的规划区域选择虚拟试验组件,并查看虚拟试验组件对应的至少一个菜单项对象,并从至少一个菜单项对象中选择一个目标菜单项对象。
S82:根据选择操作所选中的目标菜单项对象,从类对象中获取目标菜单项对象对应的目标类方法。
本实施例中,根据选择操作所选中的目标菜单项对象,通过执行getMethod方法从虚拟试验组件的类对象中获取目标菜单项对象对应的目标类方法。
S83:执行目标类方法。
本实施例中,在获取到目标菜单项对象对应的目标类方法后,执行目标类方法,即可对虚拟试验组件执行该目标类方法对应的试验设备的试验功能。
示例的,虚拟试验组件为虚拟雷达组件,目标菜单项对象为上电,从虚拟雷达组件的类对象中获取上电对应的类方法,执行该类方法,即可为虚拟雷达组件进行上电。
本申请实施例提供的组件可视化方法,接收用户针对虚拟试验组件的菜单项对象的选择操作,根据选择操作所选中的目标菜单项对象,从类对象中获取目标菜单项对象对应的目标类方法,执行目标类方法。通过本申请实施例可以由虚拟试验组件模拟试验设备的设备功能,实现针对试验设备的虚拟试验。
在上述实施例的基础上,本申请实施例还提供一种组件可视化方法。请参考图8,为本申请实施例提供的又另一种组件可视化方法的流程示意图,如图8所示,上述S11包括:
S111:根据试验设备的属性信息和设备功能,利用元模型生成试验设备的类图。
本实施例中,利用基于元模型创建TDL语法支持的统一建模语言(UnifiedModeling Language,UML)类图,UML类图由三部分构成,第一部分为类名,该类名可以表示试验设备的名称,第二部分为类的属性,用于表示试验设备的属性信息,第三部分为类的操作,用于表示试验设备的设备功能。
S112:利用代码转换器,将试验设备的类图转换为虚拟试验组件的试验训练定义语言。
具体的,在生成试验设备的类图后,需要将试验设备的类图转换为代码,本实施例中,利用代码转换器,将类图转换为试验训练定义语言,试验训练定义语言全称为试验训练使能体系结构定义语言(The test of training enabling architecture DefineLanguage),也可以被称为TDL代码。
S113:将试验训练定义语言映射为虚拟试验平台对应的虚拟试验组件代码。
本实施例中,在生成的试验训练定义语言的基础上,构建试验训练定义语言与虚拟试验平台的映射机制,以将试验训练定义语言转换为虚拟试验平台可以识别的虚拟试验组件代码。示例的,虚拟试验组件代理为Java代码。
在一种可选实施方式中,利用FreeMaker模板引擎中的代码生成器,将试验训练定义语言里的TENA::开头代码串转换为Java代码。
其中,代码生成器包括:Java类生成器、属性生成器和方法生成器,属性生成器从试验训练定义语言中识别出属性代码,方法生成器从试验训练定义语言中识别出方法代码,由Java类生成器将属性代码和方法代码均转换为Java代码。在本实施例中,FreeMaker模板引擎以插件的形式集成到UML类图生成软件中,因此,代码生成器在UML类图生成软件中作为代码生成插件存在。
S114:获取用户针对试验设备的属性信息输入的填充操作方法。
本实施例中,开发人员根据虚拟试验组件的属性信息和与属性信息相关的业务逻辑要求,利用Eclipse开发平台为虚拟试验组件的属性信息进行代码填充,通过填充与属性信息相关的Getter和Setter方法,使得可以针对虚拟试验组件的属性信息执行相关的功能,例如setName方法可以为name属性提供更改name的功能。
S115:根据虚拟试验组件代码和填充操作方法,生成组件类文件。
本实施例中,将虚拟试验资源代码和填充操作方法利用Java编译工具编译为组件类文件,以便可以在不同的虚拟试验平台上运行,生成的组件类文件与两张组件图标文件共同构成完整的虚拟试验组件。
在一种可选实施方式中,需要在虚拟试验平台中新增虚拟试验组件时,只需向预设路径中添加新组件类文件;需要在虚拟试验平台中删除虚拟试验组件时,只需从预设路径中删除组件类文件,重新启动虚拟试验平台即可,不需要对虚拟试验平台进行修改,实现虚拟试验组件在虚拟试验平台中的动态扩展。
本申请实施例提供的组件可视化方法,根据试验设备的属性信息和设备功能,利用元模型生成试验设备的类图,利用代码转换器,将试验设备的类图转换为虚拟试验组件的试验训练定义语言,将试验训练定义语言映射为虚拟试验平台对应的虚拟试验组件代码,获取用户针对试验设备的属性信息输入的填充操作方法,根据虚拟试验组件代码和填充操作方法,生成组件类文件。通过本申请实施例生成每个虚拟试验组件的组件类文件,以将虚拟试验组件和虚拟试验平台解耦,只在试验需要时将虚拟试验组件加载至虚拟试验平台中,无需对虚拟试验平台进行代码修改,实现虚拟试验平台上虚拟试验组件的动态扩展,提高了虚拟试验平台的可扩展性。
在上述实施例的基础上,本申请实施例还提供一种组件可视化方法。请参考图9,为本申请实施例提供的又再一种组件可视化方法的流程示意图,如图9所示,该方法还包括:
S91:通过服务器获取试验设备的属性信息。
示例的,请参考图10,为本申请实施例提供的一种虚拟试验平台与试验设备通信的结构示意图,如图10所示,本实施例中,虚拟试验组件和试验设备之间通过服务器进行通信,例如可以为ActiveMQ服务器。试验设备定时将自身的属性信息发送至服务器,虚拟试验平台定时从服务器获取属性信息并解析显示。
S92:响应针对属性信息的修改操作,修改试验设备的属性信息,以使得试验设备从服务器中获取修改后的属性信息,更新属性信息。
本实施例中,虚拟试验平台接收用户输入的针对虚拟试验组件的属性信息的修改操作,修改虚拟试验组件的属性信息。虚拟试验平台修改虚拟试验组件的属性信息后,虚拟试验组件将修改后的属性信息发送至服务器,多个与服务器通信连接的试验设备从服务器获取到修改后的属性信息,并对属性信息进行解析,若确定属性信息对应的目标试验设备是自身,则将自身的属性信息更新为修改后的属性信息。
本申请实施例提供的组件可视化方法,通过服务器获取试验设备的属性信息,响应针对属性信息的修改操作,修改试验设备的属性信息,以使得试验设备从服务器中获取修改后的属性信息,更新属性信息。通过本申请实施例既可以远程获取试验设备的属性信息,也可以远程对试验设备的属性信息进行修改,提高了虚拟试验效率。
在上述实施例的基础上,本申请实施例还提供一种应用组件可视化方法的虚拟装置。请参考图11,为本申请实施例提供的一种组件可视化装置的结构示意图,如图11所示,该装置包括:
类对象获取模块10,用于获取虚拟试验组件的类对象,其中,类对象包括:虚拟试验组件的类属性和类方法;
实例对象生成模块20,用于将类对象反射生成虚拟试验组件的实例对象,其中,实例对象包括:类属性对应的实例属性和类方法对应的实例方法;
图形节点对象生成模块30,用于在虚拟试验平台的规划区域上生成图形节点对象;
菜单项对象生成模块40,用于根据实例方法,生成实例方法对应的菜单项对象;
映射显示模块50,用于将菜单项对象和实例属性映射至图形节点对象,以采用图形节点对象在虚拟试验平台上显示虚拟试验组件。
可选的,类对象获取模块10,具体用于根据虚拟试验组件的组件类型,从预设的组件类对象集合中获取组件类型对应的类对象为虚拟试验组件的类对象。
可选的,该装置还包括:
类文件获取模块,用于获取虚拟试验组件的类文件,其中,类文件包括:虚拟试验组件的组件属性和操作方法;
类对象加载模块,用于将类文件加载为类对象,存储在组件类对象集合中。
可选的,该装置还包括:
组件图标获取模块,用于根据虚拟试验组件的组件类型,获取组件类型对应的图标为组件图标;
图标注入模块,用于将组件图标注入图形节点对象,以根据组件图标采用图形节点对象显示虚拟试验组件。
可选的,该装置还包括:
选择模块,用于接收用户针对虚拟试验组件的菜单项对象的选择操作;
类方法获取模块,用于根据选择操作所选中的目标菜单项对象,从类对象中获取目标菜单项对象对应的目标类方法;
执行模块,用于执行目标类方法。
可选的,类文件获取模块,包括:
类图生成单元,用于根据试验设备的属性信息和设备功能,利用元模型生成试验设备的类图;
代码转换单元,用于利用代码转换器,将试验设备的类图转换为虚拟试验组件的试验训练定义语言;
代码映射单元,用于将试验训练定义语言映射为虚拟试验平台对应的虚拟试验组件代码;
填充操作方法获取单元,用于获取用户针对试验设备的属性信息输入的填充操作方法;
类文件生成单元,用于根据虚拟试验组件代码和填充操作方法,生成组件类文件。
可选的,该装置还包括:
属性信息获取模块,用于通过服务器获取试验设备的属性信息;
属性信息修改模块,用于响应针对属性信息的修改操作,修改试验设备的属性信息,以使得试验设备从服务器中获取修改后的属性信息,更新属性信息。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(Digital Singnal Processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(System on Chip,简称SoC)的形式实现。
请参考图12,为本申请实施例提供的计算机设备的示意图,该计算机设备100包括:处理器101、存储介质102和总线,存储介质102存储有处理器101可执行的程序指令,当计算机设备100运行时,处理器101与存储介质102之间通过总线通信,处理器101执行程序指令,以执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。
可选地,本发明还提供一种计算机可读存储介质,存储介质上存储有计算机程序,计算机程序被处理器运行时执行时用于执行上述方法实施例。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:Processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
上仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种组件可视化方法,其特征在于,应用于虚拟试验平台,所述方法包括:
获取虚拟试验组件的类对象,其中,所述类对象包括:所述虚拟试验组件的类属性和类方法;
将所述类对象反射生成所述虚拟试验组件的实例对象,其中,所述实例对象包括:所述类属性对应的实例属性和所述类方法对应的实例方法;
在所述虚拟试验平台的规划区域上生成图形节点对象;
根据所述实例方法,生成所述实例方法对应的菜单项对象;
将所述菜单项对象和所述实例属性映射至所述图形节点对象,以采用所述图形节点对象在所述虚拟试验平台上显示所述虚拟试验组件。
2.如权利要求1所述的方法,其特征在于,所述获取虚拟试验组件的类对象,包括:
根据所述虚拟试验组件的组件类型,从预设的组件类对象集合中获取所述组件类型对应的类对象为所述虚拟试验组件的类对象。
3.如权利要求2所述的方法,其特征在于,所述根据所述虚拟试验组件的组件类型,从预设的组件类对象集合中获取所述组件类型对应的类对象为所述虚拟试验组件的类对象之前,所述方法还包括:
获取所述虚拟试验组件的类文件,其中,所述类文件包括:所述虚拟试验组件的组件属性和操作方法;
将所述类文件加载为所述类对象,存储在所述组件类对象集合中。
4.如权利要求2所述的方法,其特征在于,所述在所述虚拟试验平台的规划区域上生成图形节点对象之后,所述方法还包括:
根据所述虚拟试验组件的组件类型,获取所述组件类型对应的图标为组件图标;
将所述组件图标注入所述图形节点对象,以根据所述组件图标采用所述图形节点对象显示所述虚拟试验组件。
5.如权利要求1所述的方法,其特征在于,所述方法还包括:
接收用户针对所述虚拟试验组件的菜单项对象的选择操作;
根据所述选择操作所选中的目标菜单项对象,从所述类对象中获取所述目标菜单项对象对应的目标类方法;
执行所述目标类方法。
6.如权利要求3所述的方法,其特征在于,所述获取所述虚拟试验组件的类文件,包括:
根据试验设备的属性信息和设备功能,利用元模型生成所述试验设备的类图;
利用代码转换器,将所述试验设备的类图转换为所述虚拟试验组件的试验训练定义语言;
将所述试验训练定义语言映射为所述虚拟试验平台对应的虚拟试验组件代码;
获取用户针对所述试验设备的属性信息输入的填充操作方法;
根据所述虚拟试验组件代码和所述填充操作方法,生成所述组件类文件。
7.如权利要求6所述的方法,其特征在于,所述方法还包括:
通过服务器获取所述试验设备的属性信息;
响应针对所述属性信息的修改操作,修改所述试验设备的属性信息,以使得所述试验设备从所述服务器中获取修改后的属性信息,更新所述属性信息。
8.一种组件可视化装置,其特征在于,应用于虚拟试验平台,所述装置包括:
类对象获取模块,用于获取虚拟试验组件的类对象,其中,所述类对象包括:所述虚拟试验组件的类属性和类方法;
实例对象生成模块,用于将所述类对象反射生成所述虚拟试验组件的实例对象,其中,所述实例对象包括:所述类属性对应的实例属性和所述类方法对应的实例方法;
图形节点对象生成模块,用于在所述虚拟试验平台的规划区域上生成图形节点对象;
菜单项对象生成模块,用于根据所述实例方法,生成所述实例方法对应的菜单项对象;
映射显示模块,用于将所述菜单项对象和所述实例属性映射至所述图形节点对象,以采用所述图形节点对象在所述虚拟试验平台上显示所述虚拟试验组件。
9.一种计算机设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的程序指令,当所述计算机设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述程序指令,以执行如权利要求1至7任一所述的组件可视化方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至7任一所述的组件可视化方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210093614.3A CN114416266A (zh) | 2022-01-26 | 2022-01-26 | 组件可视化方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210093614.3A CN114416266A (zh) | 2022-01-26 | 2022-01-26 | 组件可视化方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114416266A true CN114416266A (zh) | 2022-04-29 |
Family
ID=81277598
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210093614.3A Pending CN114416266A (zh) | 2022-01-26 | 2022-01-26 | 组件可视化方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114416266A (zh) |
-
2022
- 2022-01-26 CN CN202210093614.3A patent/CN114416266A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108027722B (zh) | 在编译和部署中动态更新应用 | |
US20080320071A1 (en) | Method, apparatus and program product for creating a test framework for testing operating system components in a cluster system | |
JP5350428B2 (ja) | 自動プログラム生成装置、方法及びコンピュータプログラム | |
CN111782539B (zh) | 一种基于国产操作系统的测试诊断一体化开发平台 | |
WO2013030674A2 (en) | System and methods for generating and managing a virtual device | |
CN103180834B (zh) | 自动操作系统测试框架 | |
JP2010250378A (ja) | ソフトウェア開発支援装置、システム、ソフトウェア開発支援装置の機能拡張方法、及びプログラム | |
CN111695827A (zh) | 业务流程的管理方法、装置、电子设备及存储介质 | |
CN112732576A (zh) | 基于用户界面的自动化测试方法、装置及设备 | |
CN111949529B (zh) | 系统调试方法、装置、计算机设备和存储介质 | |
CN110209565A (zh) | 一种元数据模型调试方法及其装置 | |
CN114416266A (zh) | 组件可视化方法、装置、计算机设备及存储介质 | |
CN110764864A (zh) | 一种基于Terraform的可视化资源编排方法 | |
CN114721647B (zh) | 一种基于无代码应用开发的面向对象编程方法 | |
CN116248526A (zh) | 部署容器平台的方法、装置及电子设备 | |
GB2400211A (en) | A method of creating software that is portable across different operating systems | |
CN111459547B (zh) | 一种函数调用链路的展示方法和装置 | |
CN111158645B (zh) | 提供集成开发环境的系统和方法 | |
CN113220586A (zh) | 一种自动化的接口压力测试执行方法、装置和系统 | |
CN114217927A (zh) | 一种线程调用方法、装置、计算机设备及存储介质 | |
CN112363700A (zh) | 智能合约的协同创建方法、装置、计算机设备和存储介质 | |
Wehrmeister et al. | Framework to simulate the behavior of embedded real-time systems specified in UML models | |
JP7328922B2 (ja) | 設定装置、設定方法、及びプログラム | |
CN112948228B (zh) | 一种面向流数据的多模数据库评测基准系统及其构建方法 | |
CN116126366B (zh) | 芯片输入输出接口配置方法,装置,介质及电子设备 |
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 |