- 1、本文档共54页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
--(完美WORD文档DOC格式,可在线免费浏览全文和下载)值得下载!
本文观看结束!!! 本文观看结束!!! GDI函数大致可分类为: 设备上下文函数:如GetDC、CreateDC、DeleteDC。 画线函数:如LineTo、Polyline、Arc。 填充画图函数:如Ellipse、FillRect、Pie。 画图属性函数:如 SetBkColor、SetBkMode、SetTextColor。 文本、字体函数:如TextOut、GetFontData。 位图函数:如 SetPixel、BitBlt、StretchBlt。 坐标函数:如DPtoLP、LPtoDP、ScreenToClient、 ClientToScreen。 映射函数:如SetMapMode、SetWindowExtEx、SetViewportExtEx。 元文件函数:如PlayMetaFile、SetWinMetaFileBits。 区域函数:如FillRgn、FrameRgn、InvertRgn。 路径函 数:如BeginPath、EndPath、StrokeAndFillPath。 裁剪函数:如SelectClipRgn、 SelectClipPath。 设备上下文 在GDI编程中,几乎所有的操作都围绕设备上下文(DC)展开。 设备上下文,Device Context,简称DC,是Windows 使用的一种结构,所有GDI操作前都需取得特定设备的上下文。 设备上下文的句柄是HDC。 HDC是一个你可以向其绘图的句柄;它可以代表整个屏幕,一个窗口的客戶区域,一个存在內存中的位图,或是一个打印机。 例如,如果你想在一个窗口上绘图,首先你要用GetDC()来获取代表这个窗口的HDC,然后你就可以用任何以HDC为参数的GDI函数来绘图了。 位图 位图可以用LoadBitmap()来完成大多数的基本操作,比如简单地装入一个位图资源。 GDI不能直接用位图对象来绘图,因为绘图操作已经被设备上下文抽象了,只能通过设备上下文来绘制位图。 利用位图绘图的大体思路是:把位图对象装入设备上下文,通过设备上下文把位图显示在屏幕上。 3.3 利用GDI实现游戏中的绘图 游戏中的绘图主要通过是绘制位图来实现的。 在游戏中,因为角色位图的位置是不断变化的,所以设备上下文中的合成位图的内容也是不断变化的。 为了实现游戏画面的刷新,通常是利用缓存设备上下文来保存下一帧的合成位图对象。 下一帧的合成位图对象是根据角色位图的实时位置和状态重新渲染后的结果。 下面举例给出了利用GDI实现位图绘图的主要步骤: 定义windows屏幕设备句柄变量windowDC; 定义窗口缓冲设备句柄变量bufferDC; 定义一个位图内存设备句柄变量picDC; 定义一个位图句柄变量picBMP; 定义一个缓冲位图句柄变量bufferBMP; 调用GetDC()获取当前整个屏幕设备的句柄值,赋给windowDC; 调用CreateCompatibleDC()创建与windowDC兼容的内存设备,并将其句柄值赋给位图内存设备变量picDC。 调用CreateCompatibleDC()创建与windowDC兼容的内存设备,并其句柄值赋给窗口缓冲设备变量bufferDC。 调用CreateCompatibleBitmap()创建与windowDC兼容的位图对象,并将该位图的句柄值赋给bufferBMP。 调用LoadBitmap()加载指定位图资源,并获取给该位图资源的句柄值,赋给picBMP。 调用SelectObject()将缓冲位图句柄bufferBMP和窗口缓冲设备句柄bufferDC关联。 调用SelectObject()将位图句柄picBMP和位图内存设备picDC关联。 两次调用特定运算的BitBlt()函数来对位图内存设备picDC中的位图进行“去背”处理后,把结果保存在窗口缓冲设备bufferDC中。 调用BitBlt()函数将窗口缓冲设备中的全部图像内容拷贝到屏幕设备windowDC上显示。 GetDC()函数 函数功能:该函数检索一指定窗口的客户区域或整个屏幕的显示设备上下文环境的句柄,以后可以在GDI函数中使用该句柄来在设备上下文环境中绘图。 函数原型:HDC GetDC(HWND hWnd); 参数: hWnd:设备上下文环境被检索的窗口的句柄,如果该值为NULL,GetDC则检索整个屏幕的设备上下文环境。 返回值:如果成功,返回指定窗口客户区的设备上下文环境;如果失败,返回值为Null。 CreateCompatibleDC()函数 函数功能:该函数创建一个与指定设备兼容的内存设备上下文环境(DC)。 函数原型:HDC CreateCompatibleDC(HDC hdc); 参数: hdc:现有设备上下文环境的句柄,如果该句柄为NULL,该函数创
您可能关注的文档
- CAD在建筑暖通、空调、燃气工程中的应用.ppt
- CDM项目核查与认证.ppt
- CH2 信用与信用工具.ppt
- ch04市场营销战略.ppt
- Delphi——图书馆管理信息系统设计.ppt
- EPIdata软件在流行病学中的应用.ppt
- GE全数字ip楼宇对讲(家居智能)培训资料.ppt
- H3C_云计算及下一代数据中心解决方案.ppt
- LED软灯条实际应用与安装指导.ppt
- MATLAB_微分方程问题的解法.ppt
- Unit6ShoppingPartALet'slearn(课件)-人教PEP版(2012)英语四年级下.pptx
- 人教版高一化学必修二课件1.2.1元素周期律第1课时原子核外电子排布.ppt
- 高三数学(理)二轮复习专题集训专题六解析几何6.3.doc
- 标记导体Ver Sunrise Moon 脚本大合集 2018版 Lookae Scripts ReadMe300.pdf
- 西宽5x19-第十九部分讨论重点.pdf
- 酒驾驾驶员模拟驾驶课程 POV-24.pdf
- 2025年江苏省苏州市八校高考历史第三次适应性试卷-普通用卷.docx
- 北京市大兴区精华学校2024-2025学年高三下学期三模历史试题.pdf
- 【语文】北京市海淀区2025届高三下学期期中考试试题(解析版).pdf
- 2025届河南省漯河市高考模拟检测语文试卷.docx
文档评论(0)