天天看点

DJYGUI系列文章一:DJYGUI图形系统介绍

1 DJYGUI介绍

DJYGUI在2009年已经构建初代框架,在2010年到2012年开发和实现。DJYGUI是运行在DJYOS的一个图形系统,包括GK(图形内核)、GKLIB(GK函数库)和GDD(图形装饰平台)三大组件。图形系统模块框架图,如图1-1:

DJYGUI系列文章一:DJYGUI图形系统介绍

图1-1 DJYGUI图形引擎模块框架图

DJYGUI是完全和DJYOS内核匹配的图形系统,DJYOS的强大实时性和类脑事件调度属性,使DJYGUI具有一般图形系统不具备的一些功能,后续陆续详细介绍。

在DJYGUI系统中,总体架构及层次关系如图 1-2所示。

DJYGUI系列文章一:DJYGUI图形系统介绍

图 1-2 DJYGUI总体架构

2 DJYGUI图形内核介绍–GK

GK(GUI KERNEL,即图形内核)是DJYGUI多窗口支持的底层核心,大部分的图形操作如剪切域、多窗口层叠、基本显示等都是在这里完成,它不是一堆显示函数的集合,而是一套比较完善的图形支持系统。

GK提供图形操作的大部分功能,如多窗口管理、多显示器、镜像显示、色彩管理、窗口ROP属性和多种缓冲方式等,同时支持基本的图形绘制,如点、直线、圆、曲线、矩形填充和位图等。因此,GK和GKLIB相结合,形成了一个精致而强大的图形支持系统,特别适合于资源紧张的嵌入式系统,能够为应用程序提供完成中等复杂程度的图形编程。如果系统资源比较丰富,要实现复杂的图形功能,建议再把GDD模块加上。

3 DJYGUI图形内核函数库-GKLib

GKLib是在GK纸上的一系列函数库,用于底层绘制共性图形。

4 DJYGUI图形装饰平台介绍-GDD

GDD(The Graphics decorate designer,图形装饰设计师)是建立在Djyos内核与GK(GUI Kernel)之上的一套图形支持系统。它可向用户提供图形绘制,文字显示,窗口/控件管理,窗口定时器,消息通讯机制,以及对外部输入事件(键盘,鼠标)的处理功能。

在整个系统中,它们的层次关系如图 4-1所示:

DJYGUI系列文章一:DJYGUI图形系统介绍

图 4-1 GDD在Djyos系统中层次示意图

继续阅读