CN115658023B - 一种楼宇驾驶舱***生成方法、装置、设备、介质及产品 - Google Patents
一种楼宇驾驶舱***生成方法、装置、设备、介质及产品 Download PDFInfo
- Publication number
- CN115658023B CN115658023B CN202211417422.XA CN202211417422A CN115658023B CN 115658023 B CN115658023 B CN 115658023B CN 202211417422 A CN202211417422 A CN 202211417422A CN 115658023 B CN115658023 B CN 115658023B
- Authority
- CN
- China
- Prior art keywords
- component
- data
- building
- service
- configuration
- 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.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Stored Programmes (AREA)
Abstract
本申请公开了一种楼宇驾驶舱***生成方法、装置、设备、介质及产品,应用于计算机技术领域,具体为:获取基于electron开源库创建的楼宇驾驶舱***的应用架构,该应用架构至少包括楼宇驾驶舱***的主程序和各渲染程序;确定为各组件分别配置的渲染属性和控制方式,并基于各组件的渲染属性和控制方式,生成各组件的配置文件;对楼宇驾驶舱***的应用架构和各组件的配置文件进行打包,得到楼宇驾驶舱***的安装包,从而可以实现楼宇驾驶舱***的快速搭建,进而可以降低楼宇驾驶舱***的搭建难度,提高楼宇驾驶舱***的搭建效率。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种楼宇驾驶舱***生成方法、装置、设备、介质及产品。
背景技术
楼宇驾驶舱***是集采集、存储、管理、挖掘、分析、可视化于一体的楼宇智能化产品,其在采集、存储海量楼宇数据的基础上,通过一体化、并行化的高效数据挖掘技术,获取隐藏在大数据下的知识以进行楼宇监测、预警、决策等处理,从而可以提升楼宇公共安全和运行管理水平以及突发事件的处置效率。
然而,实际应用中,由于楼宇建筑的唯一性决定了楼宇智能化产品的定制化,从而导致楼宇驾驶舱***的开发难度较大,而且楼宇驾驶舱***的研发成本通常较高、研发效率也比较低。
发明内容
本申请提供了一种楼宇驾驶舱***生成方法、装置、设备、介质及产品,用以解决现有技术针对楼宇驾驶舱***的搭建难度较大、搭建效率较低的问题,本申请提供的技术方案如下:
一方面,本申请提供了一种楼宇驾驶舱***生成方法,包括:
获取基于electron开源库创建的楼宇驾驶舱***的应用架构;其中,应用架构至少包括楼宇驾驶舱***的主程序和各渲染程序;
确定为各组件分别配置的渲染属性和控制方式,并基于各组件的渲染属性和控制方式,生成各组件的配置文件;其中,各组件为各渲染程序渲染的用户界面中的组件;
对楼宇驾驶舱***的应用架构和各组件的配置文件进行打包,得到楼宇驾驶舱***的安装包。
另一方面,本申请提供了一种楼宇驾驶舱***生成装置,包括:
架构创建单元,用于获取基于electron开源库创建的楼宇驾驶舱***的应用架构;其中,应用架构至少包括楼宇驾驶舱***的主程序和各渲染程序;
组件配置单元,用于确定为各组件分别配置的渲染属性和控制方式,并基于各组件的渲染属性和控制方式,生成各组件的配置文件;其中,各组件为各渲染程序渲染的用户界面中的组件;
打包执行单元,用于对楼宇驾驶舱***的应用架构和各组件的配置文件进行打包,得到楼宇驾驶舱***的安装包。
另一方面,本申请提供了一种电子设备,包括:存储器、处理器和存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的楼宇驾驶舱***生成方法。
另一方面,本申请还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,计算机指令被处理器执行时实现上述的楼宇驾驶舱***生成方法。
另一方面,本申请还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现本申请提供的楼宇驾驶舱***生成方法。
本申请的有益效果如下:
本申请通过基于electron开源库创建楼宇驾驶舱***的应用架构,并对各组件的渲染属性和控制方式进行配置,即可通过打包快速生成楼宇驾驶舱***的安装包,从而可以实现楼宇驾驶舱***的快速搭建,进而可以降低楼宇驾驶舱***的搭建难度,提高楼宇驾驶舱***的搭建效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例中楼宇驾驶舱***生成方法的概况流程示意图;
图2为本申请实施例中楼宇驾驶舱***生成方法的具体流程示意图;
图3为本申请实施例中楼宇驾驶舱***生成装置的结构示意图;
图4为本申请实施例中电子设备的硬件结构示意图。
具体实施方式
为了使本申请的目的、技术方案及有益效果更加清楚明白,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一种楼宇驾驶舱***生成方法,该楼宇驾驶舱***生成方法可以应用于台式电脑、笔记本电脑等电子设备,参阅图1所示,本申请实施例提供的楼宇驾驶舱***生成方法的概况流程如下:
步骤101:获取基于electron开源库创建的楼宇驾驶舱***的应用架构;其中,应用架构至少包括楼宇驾驶舱***的主程序和各渲染程序。
实际应用中,electron为基于HTML、CSS和JavaScript来构建跨平台桌面应用程序的一个开源库,其可以将Chromium和Node.js合并到同一个运行环境中,并将其打包为Mac、Windows和Linux***下的桌面应用程序,基于此,本申请实施例可以基于electron开源库创建楼宇驾驶舱***的应用架构,而在获取基于electron开源库创建的楼宇驾驶舱***的应用架构时,还可以确定在应用架构的package.json文件中添加的umi脚手架,将主程序的渲染路径配置为umi脚手架的服务端口路径,并为主程序增加生产环境或测试环境的渲染路径。
在具体实施时,使用electron8.5.5配合electron-builder搭建应用框架,在package.json增加umi脚手架的引入,配置主程序的渲染路径为umi脚手架的服务端口路径,从而在本地可以运行预览,判断打包环境是否为packaged以增加生产或测试环境的渲染路径,通过node_path读取umi构建产物的路径以达到应用内umi包产物的读取和渲染。
步骤102:确定为各组件分别配置的渲染属性和控制方式,并基于各组件的渲染属性和控制方式,生成各组件的配置文件;其中,各组件为各渲染程序渲染的用户界面中的组件。
实际应用中,在执行步骤302时,可以采用但不限于以下方式:
首先,获取为各组件分别配置的属性信息,并基于各组件的唯一标识和属性信息,生成各组件的渲染属性配置表;其中,属性信息至少包括尺寸、性质、渲染动画。
然后,获取组件操控事件,并基于各组件的唯一标识和组件操控事件,生成各组件的操控事件配置表;其中,组件操控事件至少包括基于鼠标的拖拽、点击事件,基于键盘的按键操控事件,以及基于触控的拖拽、点击事件中的一种或多种。
最后,将各组件的渲染属性配置表和操控事件配置表,确定为各组件的配置文件。
在具体实施时,一方面,接入分析各组件的属性定义,并生成各组件的渲染属性配置表,以及定义各组件的唯一标识,以统一的规范管理各组件的性质、属性、渲染格式等,通过dva技术将规范存储在公共数据中心以方便在图层管理区、搭建区、配置区进行shcema的增删改查。另一方面,通过html、js的原生能力分析鼠标拖拽点击、键盘按键操作和触控操作,以对鼠标拖拽点击操作、键盘按键操作和触控操作的操作位置进行准确定位以及在该操作位置上进行组件控制,并定义一个操作区域,通过js的drag事件监听用户的鼠标操作,鼠标在组件展示区域按下后传递组件的唯一标识,在操作区域获取鼠标的松开位置,同时读取唯一标识通过导入组件在鼠标的松开位置定位渲染出组件,并将组件的属性及数据服务配置等信息渲染在配置区域,以及通过js的onkeydown和onkeyup等事件对键盘的按键进行监听,定义删除和滚动的快捷键为delete和空格键,当监听到按键事件时,对组件进行删除或者document的scroll滚动。
步骤103:对楼宇驾驶舱***的应用架构和各组件的配置文件进行打包,得到楼宇驾驶舱***的安装包。
实际应用中,为了实现楼宇驾驶舱***中各3d模型的3d渲染效果,还可以基于socket连接3d模型服务,并将3d模型服务与各组件中的目标组件和目标组件的组件操控事件进行关联;其中,目标组件可以是按钮、输入框、下拉选择框等用于触发3d模型服务的可交互组件。
在具体实施时,通过Socket连接3d模型服务,并配合视角选择关联到可交互组件以操作3d服务内的事件、数据渲染,以及定义一个3d模型服务的地址栏,通过node的net模块连接3d模型像素流的socket服务,并定义交互事件,将3d模型服务的交互事件以json形式规范定义在组件规范内,其中key值为交互的翻译字段,value值为socket服务的命令,当选择交互事件时即在socket服务中发送指令,以及定义一个数据渲染的选择项,在通过数据服务配置区域的api请求或者其他服务请求获取到数据后可通过数据渲染的选择项对3d模型服务进行数据传输选择。
此外,本申请实施例中,还可以通过各组件的属性及数据服务连接配置项进行组件级控制,实际应用中,在通过各组件的属性及数据服务连接配置项进行组件级控制时,可以采用但不限于以下方式:
首先,定义一个属性编辑区;其中,属性编辑区用于编辑各组件的属性信息。
然后,定义一个数据服务配置区;其中,数据服务配置区包括静态数据配置区、api数据配置区和中台服务数据配置区,静态数据配置区用于配置各组件的默认初始数据,api数据配置区用于配置各组件的数据请求方式,中台服务数据配置区用于配置各组件的数据渲染维度。
最后,基于属性编辑区和数据服务配置区,生成各组件的服务数据配置表,并将各组件的服务数据配置表确定为各组件的配置文件。
在具体实施时,可以定义一个属性编辑区,该属性编辑区以form表单的形式通过读取schema内组件的属性规范展示为输入框或者下拉选择框,还可以定义一个数据服务配置区,该数据服务配置区可以包含静态数据配置区、api数据配置区及中台服务数据配置区,其中,静态数据配置区可进行组件的默认初始数据的配置,通过输入框编辑初始数据来修改渲染结果,api数据配置区可通过axios技术进行api接口的数据请求方式配置,在定义的入参区域可以通过输入参数等方式进行header、data请求方式等配置,在获取到数据后读取返回结果赋值在输入编辑框内,从而可以在输入框内进行代码的编写,进而可以将返回结果规范为组件所需要的数据格式,中台服务数据配置区可针对规范化的服务接口进行简易化配置,通过axios请求到数据后根据组件的数据格式对服务返回的数据进行改造,分别对每个key值进行排列,同时对组件的数据渲染维度进行展示,从而可以通过选择映射进行数据渲染。
而且,本申请实施例中,还可以按照schema格式对各组件的配置文件进行存储,并定义一个导出schema按钮,用于导出存储的各组件的配置文件,从而可以对导出的各组件的配置文件进行线下二次修改,此外,还可以定义一个上传schema按钮,用于上传本地的各组件的配置文件,从而可以对导出的各组件的最新配置文件和/或新增的组件的配置文件进行上传,进而可以获取基于上传schema按钮上传的本地保存的各组件的配置文件以进行后续打包操作;其中,本地保存的各组件的配置文件包括新增的组件的配置文件,以及对导出的组件的配置文件进行修改后的最新配置文件。
在具体实施时,使用dva对组件的属性及数据配置等统一存储为schema,从而可以通过修改Schema的方式修改应用展现形式,同时,定义一个导出按钮,点击事件绑定为使用js技术下载公共数据中心的schema json文件,公共数据中心存储的即为操作区所有组件的属性及数据服务配置,可以通过在电脑本地进行json文件的修改,此外,还可以定义一个上传schema按钮,并关联至一个隐藏的input file控件,读取用户点击后选择的文件数据,针对schema json文件进行公共数据中心的替换,从而实时展示上传的数据的操作区渲染结果。
另外,本申请实施例中,还可以获取楼宇驾驶舱***的应用架构中umi脚手架的源码数据并存储,以及定义一个导出工程按钮,用于导出umi脚手架的源码数据,从而可以通过下载源码在平台搭建的界面基础上进行二次开发,此外,还可以定义一个上传工程按钮,用于上传本地的umi脚手架的源码数据,从而可以对导出的umi脚手架的最新源码数据和/或新增的umi脚手架的源码数据进行上传,进而可以获取基于上传工程按钮上传的本地保存的umi脚手架的源码数据,并基于上传的本地保存的umi脚手架的源码数据,更新所述楼宇驾驶舱***的应用架构以进行后续打包操作;其中,本地保存的umi脚手架的源码数据包括新增的umi脚手架的源码数据,以及对导出的umi脚手架的源码数据进行修改后的最新源码数据。
在具体实施时,一方面,通过解析schema配合组件的唯一标识自动生成umi脚手架源码,从而可以通过下载源码在平台搭建的界面基础上进行二次开发,另一方面,定义一个导出工程按钮,读取公共数据中心的schema配合组件的唯一标识,通过api的形式在服务器端通过脚本拉取组件管理中心的组件源文件同时进行删减,再通过主程序下载服务器端删减后的资源到根目录,在根目录内执行脚本创建一个新的umi项目,移动下载的组件资源至项目内同时进行代码的注入,从而将schema内的组件属性及其他配置信息渲染至新的umi工程内,以及基于node的fs模块进行文件的压缩,以文件流形式注入至浏览器reponse内即可将导出的工程下载至本地,从而可以在本地运行及二次开发。
进一步的,本申请实施例可以通过执行打包指令对楼宇驾驶舱***的应用架构和各组件的配置文件进行umi功能打包,从而得到楼宇驾驶舱***的安装包。在具体实施时,还可以基于node的fs获取构建产物dist文件的path,并修改为渲染程序的渲染路径,即可在应用程序内直接浏览,同时也支持将渲染路径修改为本地服务或者在线网页等以区分开发、测试、生产等环境。
下面对本申请实施例提供的楼宇驾驶舱***生成方法作进一步详细说明,参阅图2所示,本申请实施例提供的楼宇驾驶舱***生成方法的具体流程如下:
步骤201:基于electron开源库创建楼宇驾驶舱***的应用框架。
在具体实施时,使用electron8.5.5配合electron-builder搭建应用框架,在package.json增加umi脚手架的引入,配置主程序的渲染路径为umi脚手架的服务端口路径,从而在本地可以运行预览,判断打包环境是否为packaged以增加生产或测试环境的渲染路径,通过node_path读取umi构建产物的路径以达到应用内umi包产物的读取和渲染。
步骤202:接入分析各组件的属性定义,生成各组件的渲染属性配置表。
在具体实施时,定义各组件的唯一标识,以统一的规范管理各组件的性质、属性、渲染格式等,通过dva技术将规范存储在公共数据中心以方便在图层管理区、搭建区、配置区进行shcema的增删改查。
步骤203:通过html、js的原生能力分析鼠标拖拽点击操作、键盘按键操作和触控操作,以对鼠标拖拽点击操作、键盘按键操作和触控操作的操作位置进行准确定位以及在该操作位置上进行组件控制。
在具体实施时,定义一个操作区域,通过js的drag事件监听用户的鼠标操作,鼠标在组件展示区域按下后传递组件的唯一标识,在操作区域获取鼠标的松开位置,同时读取唯一标识通过导入组件在鼠标的松开位置定位渲染出组件,并将组件的属性及数据服务配置等信息渲染在配置区域,以及通过js的onkeydown和onkeyup等事件对键盘的按键进行监听,定义删除和滚动的快捷键为delete和空格键,当监听到按键事件时,对组件进行删除或者document的scroll滚动。
步骤204:通过socket连接3d模型服务,并配合视角选择关联到可交互组件以操作3d服务内的事件、数据渲染。
在具体实施时,定义一个3d模型服务的地址栏,通过node的net模块连接3d模型像素流的socket服务,并定义交互事件,将3d模型服务的交互事件以json形式规范定义在组件规范内,其中key值为交互的翻译字段,value值为socket服务的命令,当选择交互事件时即在socket服务中发送指令,以及定义一个数据渲染的选择项,在通过数据服务配置区域的api请求或者其他服务请求获取到数据后可通过数据渲染的选择项对3d模型服务进行数据传输选择。
步骤205:通过各组件的属性及数据服务连接配置项进行组件级控制。
在具体实施时,可以定义一个属性编辑区,该属性编辑区以form表单的形式通过读取schema内组件的属性规范展示为输入框或者下拉选择框,还可以定义一个数据服务配置区,该数据服务配置区可以包含静态数据配置区、api数据配置区及中台服务数据配置区,其中,静态数据配置区可进行组件的默认初始数据的配置,通过输入框编辑初始数据来修改渲染结果,api数据配置区可通过axios技术进行api接口的数据请求方式配置,在定义的入参区域可以通过输入参数等方式进行header、data请求方式等配置,在获取到数据后读取返回结果赋值在输入编辑框内,从而可以在输入框内进行代码的编写,进而可以将返回结果规范为组件所需要的数据格式,中台服务数据配置区可针对规范化的服务接口进行简易化配置,通过axios请求到数据后根据组件的数据格式对服务返回的数据进行改造,分别对每个key值进行排列,同时对组件的数据渲染维度进行展示,从而可以通过选择映射进行数据渲染。
步骤206:使用dva对组件的属性及数据配置等统一存储为schema。
在具体实施时,使用dva对组件的属性及数据配置等统一存储为schema,从而可以通过修改schema的方式修改应用展现形式,同时,定义一个导出按钮,点击事件绑定为使用js技术下载公共数据中心的schema json文件,公共数据中心存储的即为操作区所有组件的属性及数据服务配置,可以通过在电脑本地进行json文件的修改,此外,还可以定义一个上传schema按钮,并关联至一个隐藏的input file控件,读取用户点击后选择的文件数据,针对schema json文件进行公共数据中心的替换,从而实时展示上传的数据的操作区渲染结果。
步骤207:通过解析schema配合组件的唯一标识自动生成umi脚手架源码,以通过下载源码在平台搭建的界面基础上进行二次开发。
在具体实施时,定义一个导出工程按钮,读取公共数据中心的schema配合组件的唯一标识,通过api的形式在服务器端通过脚本拉取组件管理中心的组件源文件同时进行删减,再通过主程序下载服务器端删减后的资源到根目录,在根目录内执行脚本创建一个新的umi项目,移动下载的组件资源至项目内同时进行代码的注入,从而将schema内的组件属性及其他配置信息渲染至新的umi工程内,以及基于node的fs模块进行文件的压缩,以文件流形式注入至浏览器reponse内即可将导出的工程下载至本地,从而可以在本地运行及二次开发。
步骤208:运行打包指令进行打包得到楼宇驾驶舱***的安装包。
在具体实施时,通过执行打包指令进行umi功能的打包,基于node的fs获取构建产物dist文件的path,并修改为渲染程序的渲染路径,即可在应用程序内直接浏览,同时也支持将渲染路径修改为本地服务或者在线网页等以区分开发、测试、生产等环境。
基于上述实施例,本申请实施例还提供了一种楼宇驾驶舱***生成装置,参阅图3所示,本申请实施例提供的楼宇驾驶舱***生成装置300至少包括:
架构创建单元301,用于获取基于electron开源库创建的楼宇驾驶舱***的应用架构;其中,应用架构至少包括楼宇驾驶舱***的主程序和各渲染程序;
组件配置单元302,用于确定为各组件分别配置的渲染属性和控制方式,并基于各组件的渲染属性和控制方式,生成各组件的配置文件;其中,各组件为各渲染程序渲染的用户界面中的组件;
打包执行单元303,用于对楼宇驾驶舱***的应用架构和各组件的配置文件进行打包,得到楼宇驾驶舱***的安装包。
在一种可能的实施方式中,获取基于electron开源库创建的楼宇驾驶舱***的应用架构时,架构创建单元301还用于:
确定在应用架构的package.json文件中添加的umi脚手架;
将主程序的渲染路径配置为umi脚手架的服务端口路径,并为主程序增加生产环境或测试环境的渲染路径。
在一种可能的实施方式中,确定为各组件分别配置的渲染属性和控制方式,并基于各组件的渲染属性和控制方式,生成各组件的配置文件时,组件配置单元302具体用于:
获取为各组件分别配置的属性信息,并基于各组件的唯一标识和属性信息,生成各组件的渲染属性配置表;其中,属性信息至少包括尺寸、性质、渲染动画;
获取组件操控事件,并基于各组件的唯一标识和组件操控事件,生成各组件的操控事件配置表;其中,组件操控事件至少包括基于鼠标的拖拽、点击事件,基于键盘的按键操控事件,以及基于触控的拖拽、点击事件中的一种或多种;
将各组件的渲染属性配置表和操控事件配置表,确定为各组件的配置文件。
在一种可能的实施方式中,本申请实施例提供的楼宇驾驶舱***生成装置300还包括:
服务连接单元304,用于基于socket连接3d模型服务,并将3d模型服务与各组件中的目标组件和目标组件的组件操控事件进行关联。
在一种可能的实施方式中,本申请实施例提供的楼宇驾驶舱***生成装置300还包括:
第一定义单元305,用于定义一个属性编辑区;其中,属性编辑区用于编辑各组件的属性信息;
第二定义单元306,用于定义一个数据服务配置区;其中,数据服务配置区包括静态数据配置区、api数据配置区和中台服务数据配置区,静态数据配置区用于配置各组件的默认初始数据,api数据配置区用于配置各组件的数据请求方式,中台服务数据配置区用于配置各组件的数据渲染维度;
配置确定单元307,用于基于属性编辑区和数据服务配置区,生成各组件的服务数据配置表,并将各组件的服务数据配置表确定为各组件的配置文件。
在一种可能的实施方式中,本申请实施例提供的楼宇驾驶舱***生成装置还包括:
第一存储单元308,用于按照schema格式对各组件的配置文件进行存储;
第三定义单元309,用于定义一个导出schema按钮;其中,导出schema按钮用于导出存储的各组件的配置文件;以及定义一个上传schema按钮;其中,上传schema按钮用于上传本地的各组件的配置文件;
第一获取单元310,用于获取基于上传schema按钮上传的本地保存的各组件的配置文件;其中,本地保存的各组件的配置文件包括新增的组件的配置文件,以及对导出的组件的配置文件进行修改后的最新配置文件。
在一种可能的实施方式中,本申请实施例提供的楼宇驾驶舱***生成装置还包括:
第二存储单元311,用于获取楼宇驾驶舱***的应用架构中umi脚手架的源码数据并存储;
第四定义单元312,用于定义一个导出工程按钮;其中,导出工程按钮用于导出umi脚手架的源码数据;以及定义一个上传工程按钮;其中,上传工程按钮用于上传本地的umi脚手架的源码数据;
第二获取单元313,用于获取基于上传工程按钮上传的本地保存的umi脚手架的源码数据;其中,本地保存的umi脚手架的源码数据包括新增的umi脚手架的源码数据,以及对导出的umi脚手架的源码数据进行修改后的最新源码数据;
数据更新单元314,用于基于上传的本地保存的umi脚手架的源码数据,更新楼宇驾驶舱***的应用架构。
在一种可能的实施方式中,对楼宇驾驶舱***的应用架构和各组件的配置文件进行打包,得到楼宇驾驶舱***的安装包时,打包执行单元303具体用于:
通过执行打包指令对楼宇驾驶舱***的应用架构和各组件的配置文件进行umi功能打包,得到楼宇驾驶舱***的安装包。
需要说明的是,本申请实施例提供的楼宇驾驶舱***生成装置300解决技术问题的原理与本申请实施例提供的楼宇驾驶舱***生成方法相似,因此,本申请实施例提供的楼宇驾驶舱***生成装置300的实施可以参见本申请实施例提供的楼宇驾驶舱***生成方法的实施,重复之处不再赘述。
在介绍了本申请实施例提供的楼宇驾驶舱***生成方法和装置之后,接下来,对本申请实施例提供的电子设备进行简单介绍。
参阅图4所示,本申请实施例提供的电子设备400至少包括:处理器401、存储器402和存储在存储器402上并可在处理器401上运行的计算机程序,处理器401执行计算机程序时实现本申请实施例提供的楼宇驾驶舱***生成方法。
本申请实施例提供的电子设备400还可以包括连接不同组件(包括处理器401和存储器402)的总线403。其中,总线403表示几类总线结构中的一种或多种,包括存储器总线、***总线、局域总线等。
存储器402可以包括易失性存储器形式的可读介质,例如随机存储器(RandomAccess Memory,RAM)4021和/或高速缓存存储器4022,还可以进一步包括只读存储器(ReadOnly Memory,ROM)4023。
存储器402还可以包括具有一组(至少一个)程序模块4024的程序工具4025,程序模块4024包括但不限于:操作子***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
电子设备400也可以与一个或多个外部设备404(例如键盘、遥控器等)通信,还可以与一个或者多个使得用户能与电子设备400交互的设备通信(例如手机、电脑等),和/或,与使得电子设备400与一个或多个其它电子设备400进行通信的任何设备(例如路由器、调制解调器等)通信。这种通信可以通过输入/输出(Input /Output,I/O)接口405进行。并且,电子设备400还可以通过网络适配器406与一个或者多个网络(例如局域网(Local AreaNetwork,LAN),广域网(Wide Area Network,WAN)和/或公共网络,例如因特网)通信。如图4所示,网络适配器407通过总线403与电子设备400的其它模块通信。应当理解,尽管图4中未示出,可以结合电子设备400使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、磁盘阵列(Redundant Arrays of IndependentDisks,RAID)子***、磁带驱动器以及数据备份存储子***等。
需要说明的是,图4所示的电子设备400仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
此外,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机指令,该计算机指令被电子设备400的处理器执行时实现本申请实施例提供的楼宇驾驶舱***生成方法。具体地,该可执行程序可以内置在电子设备400中,这样,电子设备400就可以通过处理器执行内置的可执行程序实现本申请实施例提供的楼宇驾驶舱***生成方法。
而且,本申请实施例提供的楼宇驾驶舱***生成方法还可以实现为一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现本申请实施例提供的楼宇驾驶舱***生成方法。
本申请实施例提供的计算机程序产品可以采用一个或多个可读介质的任意组合,其中,可读介质可以是可读信号介质或者可读存储介质,而可读存储介质可以是但不限于是电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合,具体地,可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、RAM、ROM、可擦式可编程只读存储器(Erasable Programmable Read OnlyMemory,EPROM)、光纤、便携式紧凑盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本申请实施例提供的计算机程序产品可以采用CD-ROM并包括计算机程序,还可以在笔记本电脑、台式电脑等电子设备上运行。然而,本申请实施例提供的计算机程序产品不限于此,在本申请实施例中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
此外,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (9)
1.一种楼宇驾驶舱***生成方法,其特征在于,包括:
获取基于electron开源库创建的楼宇驾驶舱***的应用架构;其中,所述应用架构至少包括所述楼宇驾驶舱***的主程序和各渲染程序;
确定为各组件分别配置的渲染属性和控制方式,并基于所述各组件的渲染属性和控制方式,生成所述各组件的配置文件;其中,所述各组件为所述各渲染程序渲染的用户界面中的组件;
基于socket连接3d模型服务,并将所述3d模型服务与所述各组件中的目标组件和所述目标组件的组件操控事件进行关联;
对所述楼宇驾驶舱***的应用架构和所述各组件的配置文件进行打包,得到所述楼宇驾驶舱***的安装包;
其中,基于socket连接3d模型服务,并将所述3d模型服务与所述各组件中的目标组件和所述目标组件的组件操控事件进行关联,包括:
定义一个3d模型服务的地址栏,通过node的net模块连接3d模型像素流的socket服务;并定义交互事件,将3d模型服务的交互事件以json形式定义在组件规范内,其中,key值为交互的翻译字段,value值为socket服务的命令,当选择交互事件时在socket服务中发送指令;以及定义一个数据渲染的选择项,在通过数据服务配置区域的api请求或者服务请求获取到数据后通过数据渲染的选择项对3d模型服务进行数据传输选择;
其中,对所述楼宇驾驶舱***的应用架构和所述各组件的配置文件进行打包之前,还包括:
定义一个属性编辑区;其中,所述属性编辑区用于编辑所述各组件的属性信息;
定义一个数据服务配置区;其中,所述数据服务配置区包括静态数据配置区、api数据配置区和中台服务数据配置区,所述静态数据配置区用于配置所述各组件的默认初始数据,所述api数据配置区用于配置所述各组件的数据请求方式,所述中台服务数据配置区用于配置所述各组件的数据渲染维度;
基于所述属性编辑区和所述数据服务配置区,生成所述各组件的服务数据配置表,并将所述各组件的服务数据配置表确定为所述各组件的配置文件。
2.如权利要求1所述的楼宇驾驶舱***生成方法,其特征在于,获取基于electron开源库创建的楼宇驾驶舱***的应用架构时,还包括:
确定在所述应用架构的package.json文件中添加的umi脚手架;
将所述主程序的渲染路径配置为所述umi脚手架的服务端口路径,并为所述主程序增加生产环境或测试环境的渲染路径。
3.如权利要求1所述的楼宇驾驶舱***生成方法,其特征在于,确定为各组件分别配置的渲染属性和控制方式,并基于所述各组件的渲染属性和控制方式,生成所述各组件的配置文件,包括:
获取为所述各组件分别配置的属性信息,并基于所述各组件的唯一标识和属性信息,生成所述各组件的渲染属性配置表;其中,所述属性信息至少包括尺寸、性质、渲染动画;
获取组件操控事件,并基于所述各组件的唯一标识和所述组件操控事件,生成所述各组件的操控事件配置表;其中,所述组件操控事件至少包括基于鼠标的拖拽、点击事件,基于键盘的按键操控事件,以及基于触控的拖拽、点击事件中的一种或多种;
将所述各组件的渲染属性配置表和操控事件配置表,确定为所述各组件的配置文件。
4.如权利要求1所述的楼宇驾驶舱***生成方法,其特征在于,还包括:
按照schema格式对所述各组件的配置文件进行存储;
定义一个导出schema按钮;其中,所述导出schema按钮用于导出存储的各组件的配置文件;
定义一个上传schema按钮;其中,所述上传schema按钮用于上传本地的各组件的配置文件;
获取基于所述上传schema按钮上传的本地保存的各组件的配置文件;其中,所述本地保存的各组件的配置文件包括新增的组件的配置文件,以及对导出的组件的配置文件进行修改后的最新配置文件。
5.如权利要求1所述的楼宇驾驶舱***生成方法,其特征在于,还包括:
获取所述楼宇驾驶舱***的应用架构中umi脚手架的源码数据并存储;
定义一个导出工程按钮;其中,所述导出工程按钮用于导出所述umi脚手架的源码数据;
定义一个上传工程按钮;其中,所述上传工程按钮用于上传本地的umi脚手架的源码数据;
获取基于所述上传工程按钮上传的本地保存的umi脚手架的源码数据;其中,所述本地保存的umi脚手架的源码数据包括新增的umi脚手架的源码数据,以及对导出的umi脚手架的源码数据进行修改后的最新源码数据;
基于上传的本地保存的umi脚手架的源码数据,更新所述楼宇驾驶舱***的应用架构。
6.如权利要求1-5任一项所述的楼宇驾驶舱***生成方法,其特征在于,对所述楼宇驾驶舱***的应用架构和所述各组件的配置文件进行打包,得到所述楼宇驾驶舱***的安装包,包括:
通过执行打包指令对所述楼宇驾驶舱***的应用架构和所述各组件的配置文件进行umi功能打包,得到所述楼宇驾驶舱***的安装包。
7.一种楼宇驾驶舱***生成装置,其特征在于,包括:
架构创建单元,用于获取基于electron开源库创建的楼宇驾驶舱***的应用架构;其中,所述应用架构至少包括所述楼宇驾驶舱***的主程序和各渲染程序;
组件配置单元,用于确定为各组件分别配置的渲染属性和控制方式,并基于所述各组件的渲染属性和控制方式,生成所述各组件的配置文件;其中,所述各组件为所述各渲染程序渲染的用户界面中的组件;
服务连接单元,用于基于socket连接3d模型服务,并将所述3d模型服务与所述各组件中的目标组件和所述目标组件的组件操控事件进行关联;
打包执行单元,用于对所述楼宇驾驶舱***的应用架构和所述各组件的配置文件进行打包,得到所述楼宇驾驶舱***的安装包;
其中,基于socket连接3d模型服务,并将所述3d模型服务与所述各组件中的目标组件和所述目标组件的组件操控事件进行关联时,所述服务连接单元具体用于:
定义一个3d模型服务的地址栏,通过node的net模块连接3d模型像素流的socket服务;并定义交互事件,将3d模型服务的交互事件以json形式定义在组件规范内,其中,key值为交互的翻译字段,value值为socket服务的命令,当选择交互事件时在socket服务中发送指令;以及定义一个数据渲染的选择项,在通过数据服务配置区域的api请求或者服务请求获取到数据后通过数据渲染的选择项对3d模型服务进行数据传输选择;
所述楼宇驾驶舱***生成装置还包括:
第一定义单元,用于定义一个属性编辑区;其中,所述属性编辑区用于编辑所述各组件的属性信息;
第二定义单元,用于定义一个数据服务配置区;其中,所述数据服务配置区包括静态数据配置区、api数据配置区和中台服务数据配置区,所述静态数据配置区用于配置所述各组件的默认初始数据,所述api数据配置区用于配置所述各组件的数据请求方式,所述中台服务数据配置区用于配置所述各组件的数据渲染维度;
配置确定单元,用于基于所述属性编辑区和所述数据服务配置区,生成所述各组件的服务数据配置表,并将所述各组件的服务数据配置表确定为所述各组件的配置文件。
8.一种电子设备,其特征在于,包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-6任一项所述的楼宇驾驶舱***生成方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现如权利要求1-6任一项所述的楼宇驾驶舱***生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211417422.XA CN115658023B (zh) | 2022-11-14 | 2022-11-14 | 一种楼宇驾驶舱***生成方法、装置、设备、介质及产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211417422.XA CN115658023B (zh) | 2022-11-14 | 2022-11-14 | 一种楼宇驾驶舱***生成方法、装置、设备、介质及产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115658023A CN115658023A (zh) | 2023-01-31 |
CN115658023B true CN115658023B (zh) | 2023-04-28 |
Family
ID=85021124
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211417422.XA Active CN115658023B (zh) | 2022-11-14 | 2022-11-14 | 一种楼宇驾驶舱***生成方法、装置、设备、介质及产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115658023B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107861714A (zh) * | 2017-10-26 | 2018-03-30 | 天津科技大学 | 基于IntelRealSense的汽车展示应用的开发方法及*** |
CN113031936A (zh) * | 2019-12-25 | 2021-06-25 | 中国航天***工程有限公司 | 一种自动搭建页面并即时发布的方法及*** |
CN115061671A (zh) * | 2022-06-20 | 2022-09-16 | 北京数字冰雹信息技术有限公司 | 一种数字孪生应用页面与业务逻辑的配置方法及*** |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10013157B2 (en) * | 2015-07-22 | 2018-07-03 | Box, Inc. | Composing web-based interactive 3D scenes using high order visual editor commands |
EP3635538A4 (en) * | 2017-06-05 | 2021-03-10 | Umajin Inc. | PROCEDURES AND SYSTEMS FOR AN APPLICATION SYSTEM |
CN110275700A (zh) * | 2019-06-17 | 2019-09-24 | 河南大学 | 一种基于electron的跨平台桌面应用程序开发框架及方法 |
CN113835691B (zh) * | 2021-09-27 | 2024-06-11 | 工银科技有限公司 | 一种iOS应用开发方法、***、设备、介质和程序产品 |
CN114924712A (zh) * | 2022-03-16 | 2022-08-19 | 深圳市德驰微视技术有限公司 | 一种基于域控制器平台的aui模块化实现方法及*** |
CN115185519A (zh) * | 2022-07-08 | 2022-10-14 | 中国电子***技术有限公司 | 一种基于前端可视化的辅助编码方法 |
-
2022
- 2022-11-14 CN CN202211417422.XA patent/CN115658023B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107861714A (zh) * | 2017-10-26 | 2018-03-30 | 天津科技大学 | 基于IntelRealSense的汽车展示应用的开发方法及*** |
CN113031936A (zh) * | 2019-12-25 | 2021-06-25 | 中国航天***工程有限公司 | 一种自动搭建页面并即时发布的方法及*** |
CN115061671A (zh) * | 2022-06-20 | 2022-09-16 | 北京数字冰雹信息技术有限公司 | 一种数字孪生应用页面与业务逻辑的配置方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN115658023A (zh) | 2023-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11650910B2 (en) | Automated testing method and apparatus, storage medium and electronic device | |
CN102591647B (zh) | 将桌面应用转换成web应用 | |
CN101373431B (zh) | 增强型小组件合成平台 | |
CN102907069B (zh) | 执行图形应用的方法和*** | |
US7984115B2 (en) | Extensible application platform | |
CN112930529B (zh) | 从概念数据模型生成软件工件 | |
US11314769B2 (en) | Generation and graphical display of data transform provenance metadata | |
US20140289738A1 (en) | Systems and Methods for Dynamic Configuration of Client-Side Development Environments Through Use of Application Servers | |
US20090310816A1 (en) | Enabling provenance management for pre-existing applications | |
US9015608B2 (en) | Regenerating a user interface area | |
CN104823158A (zh) | 用于简化的知识工程的方法与*** | |
US20120166983A1 (en) | Integrated metadata and nested authorizations in a user interface framework | |
US7013468B2 (en) | Method and apparatus for design and manufacturing application associative interoperability | |
US20140189526A1 (en) | Changing log file content generation | |
CN105094857B (zh) | 用于应用加载的方法和*** | |
CN113835691B (zh) | 一种iOS应用开发方法、***、设备、介质和程序产品 | |
KR101175950B1 (ko) | 시스템 사양 관리 방법, 장치, 및 소프트웨어 프로그램을 저장한 컴퓨터 판독가능 매체 | |
CN115658023B (zh) | 一种楼宇驾驶舱***生成方法、装置、设备、介质及产品 | |
CN114866801B (zh) | 视频数据的处理方法、装置、设备及计算机可读存储介质 | |
CA3203793C (en) | System and method for real-time, dynamic creation, delivery, and use of customizable web applications | |
CN113656044B (zh) | 安卓安装包压缩方法、装置、计算机设备及存储介质 | |
CN111221610B (zh) | 一种页面元素采集方法和装置 | |
CN113535037A (zh) | 命令行终端交互展示方法、装置、计算机可读介质及设备 | |
CN113485909A (zh) | 测试方法、装置、计算设备以及介质 | |
JP7375931B2 (ja) | 表示制御装置および表示制御方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |