- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第07讲--利用CDC实现绘图程序
第七讲 利用CDC实现绘图程序
中国地质大学(武汉)
计算机学院
C++语言程序设计
本章内容包括设备环境与绘图程序的关系,设备环境主要功能以在MFC对应的CDC类,利用设备环境类CDC操纵文本(文本的字体、颜色和属性控制),利用设备环境类CDC实现简单图形的绘制(点、线、椭圆、矩形和弧等),各种绘图工具(画笔、画刷)使用。
要求了解CDC编写的绘图程序调用GDI?,进而调用设备驱动程序的流程,CDC的几个派生类及其使用,掌握CDC的文本操作和图形绘制、常见的绘图参数设置函数的用法、常见的绘图工具画笔和画刷的使用,熟练掌握调用API或CDC成员函数选择库存中的绘图工具。
7.1 图形绘制的基础知识
7.2 VC的文本操作
7.3 CDC的绘图操作
7.3 Windows绘图工具
本章内容
7.1 图形绘制的基本知识
7.1.1 图形操作的接口——GDI
7.1.2 图形操作有关的CDC类
7.1.3 CDC的内容
7.1.1 图形操作的接口——GDI
任何图形程序的输出,都离不开图形设备接口GDI(Graphic Device Interface),它是管理Windows应用程序在窗口内的绘图操作和与此相关的许多其它信息。如图形设备(打印机、显示器)的信息、绘图的坐标系统和映射模式、绘图工具的当前状态(什么样的画笔、画刷、文本的前景色与背景色、文本所使用的字体)。
Windows的GDI绘制的各种图形(点、线、圆、多边形、矩形等)是与设备无关的,即在屏幕的窗口内绘图与在打印机上绘图是相似的。 GDI是一个可执行程序,它接收Windows应用程序的绘图请求(表现为GDI调用),并将它们传送给相应的设备驱动程序,再由设备驱动程序驱动相应的硬件设备,如打印机或显示器输出。
7.1.1续
应用程序使用GDI可以对三种类型的图形进行操作:文本操作、矢量图形操作和光栅图形操作(图像操作)。
(1)文本操作是以逻辑坐标为单位来计算文本的输出位置,用户可以通过各种GDI函数来作出具有各种效果的文本。
(2)矢量图形指的是利用画点、直线、曲线(折线、贝塞尔曲线等)、多边形、扇形、矩形等函数所绘制的图形。
(3)光栅图形操作是指以光栅图形函数对以位图形式存储的数据进行操作,它包括各种位图和图标的输出,其在屏幕上表现为对若干个行和列的像素操作。光栅图形操作是直接从内存到显存的拷贝操作,其缺点是需要额外的内存空间,优点是操作速度快。
7.1.2 图形操作有关的CDC类
1.再论设备描述表
设备描述表是一个用来确定任何设备(如显示器、打印机)的GDI输出位置和内容属性的集合,是Windows系统下的一个保存GDI?内部数据的数据结构,它与特定的显示设备相关。对于显示器,设备描述表总是与显示器上的特定窗口相关。设备描述表中保存了显示图形所需要的各种参数值,如显示颜色、显示坐标、显示方式和背景颜色。在Windows下程序员对所有的绘图功能的调用,都是通过设备描述表来进行的。
7.1.2 续
2. 类CDC
CDC是后面所讲的其他DC类的基类。CDC基类定义了设备描述表对象, 并且提供在显示器、打印机或Windows用户区上绘图的方法,它封装了使用设备环境的GDI函数。
所有的绘图操作都是直接或间接运用了CDC的成员函数,这些函数有的进行设备描述表操作,有的是用来画图的,还有的函数是用来获取或设置绘图属性,为映像和视点服务的。
在由AppWizard创建的MFC应用程序中,视图类的OnDraw成员函数是一个处理图形的关键虚函数,它带有一个指向设备环境对象的指针pDC,MFC的绘图成大多都是通过pDC这个指针来加以访问的。
下面为CDC类的函数的分类
分类
用途
位图函数
操作位图和像素的函数
剪裁函数
定义和操作剪裁设备边界的函数
坐标函数
在物理设备和逻辑设备之间转换的函数
设备描述表函数
获取有关DC及其属性信息的函数
绘图属性函数
为DC获取和设置颜色及模式的函数
绘图工具函数
枚举在DC中可用的笔和刷子的函数
椭圆和多边形函数
绘制椭圆和多边形函数
字体函数
获取字体属性的函数
线输出函数
在DC上绘制线的函数
映像函数
创建、获取和控制原点,扩展窗口和视及为DC获取和设置映像模式的函数
区域函数
填充区域和控制区域颜色的函数
简单绘图函数
提供简单矩形和图标的绘制特性函数
文本函数
输出文本并获取
文档评论(0)