公开/公告号CN112379875A
专利类型发明专利
公开/公告日2021-02-19
原文格式PDF
申请/专利权人 武汉蓝星科技股份有限公司;
申请/专利号CN202011271220.X
申请日2020-11-13
分类号G06F8/34(20180101);G06F9/445(20180101);G06F9/451(20180101);
代理机构42242 武汉蓝宝石专利代理事务所(特殊普通合伙);
代理人高兰
地址 430000 湖北省武汉市东湖新技术开发区高新六路99号南山光谷自贸港E5栋1-1、1-2、2-1、2-2号
入库时间 2023-06-19 09:55:50
技术领域
本发明涉及计算机图像数据技术领域,具体涉及一种TD GUIE图形系统与QT图形渲染库数据交互的方法。
背景技术
在早期开发嵌入式GUI程序时,QT(应用程序开发框架)因开源较早功能丰富,受到很多企业的青睐,但使用QT开发的程序资源消耗多,学习成本高,所以越来越多的企业都在寻求其替代品。
TD GUIE图形系统是一款基于Linux系统采用C/S架构的嵌入式图形系统,Linux系统具备安全、快速的特点,C/S架构具有资源消耗低的特点,因为资源都是在服务端由系统统一分配管理的,可以有效的避免不同程序在使用相同资源时重复申请的问题。TD GUIE图形系统具有资源消耗低、系统启动快、多进程、多窗口和学习成本低等优点,目前已广泛应用在汽车、智能家居等多个领域。
为了降低客户在开发过程中的成本消耗,让企业在使用TD GUIE图形系统的同时还可以继续保留之前的QT应用程序,就需要解决QT应用程序与TDGUIE图形系统的兼容问题。
发明内容
本发明针对现有技术中存在的技术问题,提供一种TD GUIE图形系统与QT图形渲染库数据交互的方法,该方法在TD GUIE图形系统中安装QT图形渲染库,在图形软件开发时,可以十分便利的使用QT图形渲染库,并且降低开发成本。
本发明解决上述技术问题的技术方案如下:
一种基于TD GUIE图形系统的图形软件开发方法,包括以下步骤:
以软件包的形式将QT图形渲染库安装到运行有TD GUIE图形系统的Linux操作系统中;
设置共享内存,所述共享内存的写入端口与QT图形渲染库连接,其读取端口与TDGUIE图形系统的连接;
TD GUIE图形系统通过Linux内核获取用户通过外部设备触发的系统事件,并通过相关接口将系统事件传递到QT图形渲染库中;
QT图形渲染库响应系统事件刷新界面并重新绘制图像数据;然后将所述图像数据写入共享内存中;
TD GUIE图形系统从所述共享内存中读取所述图像数据,并通过Linux内核将所述图像数据显示到屏幕中。
进一步的,设置共享内存时,由TD GUIE图形系统分配共享内存,并由TD GUIE图形系统将所述共享内存地址发送给QT图形渲染库。
进一步的,所述共享内存大小由TD GUIE图形系统预先指定或者根据系统事件进行分配。
进一步的,所述TD GUIE图形系统包括TD GUIE图形系统窗口管理器、TD GUIE图形系统显示模组、TD GUIE图形系统事件模组;
所述的TD GUIE图形系统通过Linux内核获取用户通过外部设备触发的系统事件,并通过相关接口将系统事件传递到QT图形渲染库中,具体为:所述TD GUIE图形系统事件模组通过Linux内核获取用户通过外部设备触发的系统事件,并将系统事件转发至QT图形渲染库中;
所述的TD GUIE图形系统从所述共享内存中读取所述图像数据,并通过Linux内核将所述图像数据显示到屏幕中,具体为:TD GUIE图形系统窗口管理器从所述共享内存中读取所述图像数据,并将所述图像数据转发给TD GUIE图形系统显示模组,再由TD GUIE图形系统显示模组转发给Linux内核中的显示驱动进行屏幕显示。
进一步的,所述QT图形渲染库包括QT事件模组、界面刷新模块、QT显示模组;
所述的QT图形渲染库响应系统事件刷新界面并重新绘制图像数据;然后将所述图像数据写入共享内存中,具体为:QT事件模组接收TD GUIE图形系统事件模组转发的系统事件并响应,由界面刷新模块进行界面刷新并重新绘制图像数据,再由QT显示模组将重制后的图像数据写入共享内存中。
本发明的有益效果是:该方法在TD GUIE图形系统中安装QT图形渲染库,在图形软件开发时,可以十分便利的使用QT图形渲染库。以简单的结构兼容了TD GUIE图形系统和QT图形渲染库的优点,拥有TD GUIE图形系统所具有的资源消耗低、系统启动快、多进程、多窗口和费用低等优点,同时也支持QT图形库,并且降低开发成本。
附图说明
图1为本发明系统结构以及方法流程示意图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
如图1所示,本发明实施例提供了一种全新的图形软件开发架构,QT图形渲染库以软件包的形式安装到运行有TD GUIE图形系统的Linux操作系统中,并设置设置共享内存。设置共享内存时,由TD GUIE图形系统分配共享内存,并由TD GUIE图形系统将所述共享内存地址发送给QT图形渲染库。所述共享内存大小由TD GUIE图形系统预先指定或者根据系统事件进行分配。
所述TD GUIE图形系统包括TD GUIE图形系统窗口管理器、TD GUIE图形系统显示模组、TD GUIE图形系统事件模组;所述QT图形渲染库包括QT事件模组、界面刷新模块、QT显示模组。
在进行图形软件开发时,
首先,TD GUIE图形系统通过Linux内核获取用户通过外部设备触发的系统事件,并通过相关接口将系统事件传递到QT图形渲染库中。具体的,所述TD GUIE图形系统事件模组通过Linux内核获取用户通过外部设备(例如:鼠标、键盘等,也可以为其他输入设备)触发的系统事件,并将系统事件转发至QT图形渲染库中。
其次,QT图形渲染库响应系统事件刷新界面并重新绘制图像数据;然后将所述图像数据写入共享内存中。具体的,QT事件模组接收TD GUIE图形系统事件模组转发的系统事件并响应,由界面刷新模块进行界面刷新并重新绘制图像数据,再由QT显示模组将重制后的图像数据写入共享内存中。
然后,TD GUIE图形系统从所述共享内存中读取所述图像数据,并通过Linux内核将所述图像数据显示到屏幕中。具体的,TD GUIE图形系统窗口管理器从所述共享内存中读取所述图像数据,并将所述图像数据转发给TD GUIE图形系统显示模组,再由TD GUIE图形系统显示模组转发给Linux内核中的显示驱动进行屏幕显示。
该方法在TD GUIE图形系统中安装QT图形渲染库,在图形软件开发时,可以十分便利的使用QT图形渲染库。以简单的结构兼容了TD GUIE图形系统和QT图形渲染库的优点,拥有TD GUIE图形系统所具有的资源消耗低、系统启动快、多进程、多窗口和费用低等优点,同时也支持QT图形库,并且降低开发成本。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
机译: QTG QTG一种用于控制飞行系统的系统,以及一种用于综合飞行训练机的自动实现QTG的控制系统的实现方法
机译: 矢量图形系统和矢量图形渲染方法
机译: Kvlqt1-一种长基因-(qt综合征),其编码kvlqt1,可以与貂一起使用,以便-钾通道形成心脏。