[发明专利]一种计算机图形内核直接写屏技术在审
申请号: | 201210231946.X | 申请日: | 2012-07-05 |
公开(公告)号: | CN103530102A | 公开(公告)日: | 2014-01-22 |
发明(设计)人: | 罗侍田 | 申请(专利权)人: | 罗侍田 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518034 广东省深圳市福田区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 计算机 图形 内核 直接 技术 | ||
所属技术领域
本发明涉及一种计算机图形用户界面设计技术,提出一种用于实现直接写屏方式,实现图形快速输出的新方法。
背景技术
计算机图形界面应用中,直接写屏可实现快速高效输出,提高图形输出的流畅性,减少闪烁,这对须快速刷新的高速显示系统、视频应用、游戏编程等,是非常有意义的。公知的技术的实现直接写屏的方法有:
1、不使用操作系统,或者操作系统本身不提供图形系统,应用程序直接面对显示设备,所有图形输出,都是直接写屏。这种方法,由于操作系统没有提供图形界面支持,软件设计难度大,难于实现高级的界面设计。
2、由操作系统提供图形系统,但没有提供直接写屏支持,应用程序要实现直接写屏,只有绕过图形系统,获取显卡的显存地址,直接把需要绘制的图形元素往显存拷贝。这种方法,虽然实现了快速显示,但其缺点也是显而易见的。图形设备是一个共享设备,正常情况下,应用程序通过操作系统的图形系统向设备输出图形,图形设备则由操作系统统一管理。如果应用程序直接向屏幕输出的话,就扰乱了操作系统对图形设备的管理。导致操作系统输出的图形和应用程序输出的图形互相覆盖,屏幕上就变得杂乱无章。
3、有的操作系统,在常规图形系统外,提供了专门的技术让应用程序实现直接写屏,例如windows的directx技术。但这种技术亦有其局限性,首先,它是一门专用技术,需要专门学习才能掌握,应用程序源代码也与常规图形应用程序完全不一样,通用性差;其次,它需要专用的显卡驱动支持,对软件和硬件环境都比较挑剔;第三,使用directx技术实现的程序,只能在支持directx的平台上运行,缺乏通用性。
发明内容
本发明设计的直接写屏技术,可用于设计多窗口图形界面,程序员可以像设计普通界面那样设计直接写屏的图形程序。
在多窗口界面系统中,每个窗口独立定义直接写屏属性,如果该属性为真,则图形系统执行应用程序的绘图命令时,将该窗口可见部分直接绘制在显示器上;如果该属性为假,则把被绘制的图形先缓存到窗口缓冲区中,和其他窗口统一管理,统一输出到显示器上。
应用程序输出图形,无论是使用直接写屏,还是非直接写屏,代码均一致。
本发明的效果是:
应用本发明,程序员在编写需要直接写屏的程序时,只需要将直接写屏的目标窗口的属性设置为“直接写屏”,其他所有绘制操作均与普通窗口一致,在任何显示系统上都可以运行,显卡驱动也不需要特别设计。这样,程序员只需要掌握一种图形编程技术,编写出来直接写屏代码,和非直接写屏代码,是完全一致的。
附图说明
下面结合附图和实施例对本发明进一步说明。
图1是窗口上绘图的过程。
具体实施方式
本发明已经被应用于都江堰操作系统(简称djyos)的图形系统中,用于构建djyos的图形环境。应用本发明,程序员编写像游戏、实时采样显示这类对屏幕响应速度要求非常高的程序时,不再需要专门的技术,编程方法与普通图形界面程序完全一样。编程更加方便、易用,降低了学习难度,同时提高了编程效率。
窗口控制块的数据结构中,有一个成员direct_screen:
操作系统提供了API函数gk_api_set_direct_screen,该函数把窗口的direct_screen成员的值设为true。调用本函数后,应用程序对相应窗口的所有输出图形的操作,图形系统均直接输出到显示器上。
API函数gk_api_unset_direct_screen则把窗口数据结构的direct_screen成员的值设为false。调用本函数后,应用程序对相应窗口的所有输出图形的操作,图形系统均使用标准的图形操作,先输出到图形缓冲区中,然后再输出到显示器上。
窗口绘制过程如图1所示。应用程序不能直接在显示器上绘图,所有绘图操作,必须由操作系统的图形系统执行实际绘制。应用程序发出的绘图命令,将保存在图形系统的缓冲区中,然后由系统绘图程序从缓冲区中逐个取出绘图命令并执行绘图操作。图形系统执行绘图命令时,将先分析目标窗口的direct_screen成员,如果该成员为真,则直接往显示器上绘图,实现快速输出;如果该成员为假,则往图形系统缓冲区绘图,待执行完缓冲区中的全部命令后,再统一往显示器上绘图。
这样,图形输出方式对应用程序是透明的,直接写屏和非直接写屏的绘制方法和代码,是完全相同的,显著地降低了编程难度,既高效输出图形,又易学易用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于罗侍田,未经罗侍田许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210231946.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种煤矿机械铸造消失模的铸造工艺
- 下一篇:一种桑叶无糖桃酥的制作方法