GDI与绘图.ppt

GDI与绘图.ppt

ID:48805809

大小:127.00 KB

页数:22页

时间:2020-01-26

GDI与绘图.ppt_第1页
GDI与绘图.ppt_第2页
GDI与绘图.ppt_第3页
GDI与绘图.ppt_第4页
GDI与绘图.ppt_第5页
资源描述:

《GDI与绘图.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、图形基础GDI与绘图主要内容GDI功能与设备无关性设备环境绘图基本步骤绘图函数绘图模式示例思考:循环绘图GDI与设备无关性图形设备接口:(GraphicsDeviceInterface,GDI)GDI是Windows系统的重要组成部分,是为设备无关的图形设计的,负责控制在输出设备上显示图形或文字。设备无关性:我们在程序中使用的图形数据不用考虑具体设备,用一种通用的标准格式就行。显示或打印的时候由GDI内核及设备驱动程序转换为相应的设备数据。GDI函数设备驱动程序输出设备设备环境设备环境(DeviceC

2、ontext,DC)又称为设备上下文,或者设备描述表为什么要使用DC?Windows程序在屏幕、打印机或其它设备上画图时,它并不是将像素直接输出到设备上,而是将图绘制到由设备描述表表示的逻辑意义上的“显示设备空间”上。通过设备描述表,完成应用程序和物理设备之间的交互,从而实现了应用程序设计的设备无关性。DC是Windows应用程序,设备驱动程序和输出设备之间的桥梁,所有的绘制操作都通过设备描述表进行。设备环境DC的种类:屏幕设备环境、内存设备环境打印机设备环境、信息设备环境DC的结构:它是Window

3、s中定义的一种数据结构,它包括了与一个设备(如显示器和打印机)的绘制属性相关的信息描述。例如:设备上可使用的输出区域、逻辑坐标系、所选定的绘图工具、绘图前景色、填充色、字体,字体颜色,字的磅数等属性。设备环境的使用设备环境的使用途径:设备环境句柄DC虽然是一个Windows中的结构,但在应用程序中永远都不能直接存取DC,不过,由于DC也是GDI管理的一个对象,因此应用程序可以使用DC的句柄来间接地存取设备环境及其属性。设备环境句柄的主要操作:获取设备环境句柄释放设备环境句柄设备环境句柄操作响应WM_P

4、AINT消息时:hdc=BeginPaint(hwnd,&ps);……EndPaint(hwnd,&ps);响应非WM_PAINT消息时:hdc=GetDC(hwnd);……ReleaseDC(hwnd,hdc);窗口客户区绘图的一般步骤获取设备环境句柄获取绘图工具选择绘图工具利用选择的绘图工具绘图恢复原来的绘图工具并删除选择的绘图工具释放设备环境句柄绘图示例1caseWM_PAINT://获取设备环境句柄hdc=BeginPaint(hwnd,&ps);//获取绘图工具hpen=(HPEN)GetS

5、tockObject(BLACK_PEN);//选择绘图工具SelectObject(hdc,hpen);//利用选择的绘图工具绘图Ellipse(hdc,100,100,300,300);//释放设备环境句柄EndPaint(hwnd,&ps);return0;绘图示例2caseWM_LBUTTONDOWN://获取设备环境句柄hdc=GetDC(hwnd);//获取绘图工具hpen=(HPEN)GetStockObject(BLACK_PEN);//选择绘图工具SelectObject(hdc,h

6、pen);//利用选择的绘图工具绘图Ellipse(hdc,100,100,300,300);//释放设备环境句柄ReleaseDC(hwnd,hdc);return0;GDI基本图形非填充式:点、直线、曲线(弧线、贝塞尔曲线等)填充式:矩形、椭圆、饼图、扇形、弓形位图文本点、直线绘制函数画点(像素)SetPixel(hdc,x,y,crColor);crColor=GetPixel(hdc,x,y);画直线MoveToEx(hdc,xBeg,yBeg,NULL);LineTo(hdc,xEnd,yE

7、nd);Polyline(hdc,pt[],n);曲线及多边形绘制函数FunctionDescriptionArcDrawsanellipticalarc.PolyBezierDrawsoneormoreBéziercurves.PolylineDrawsaseriesoflinesegmentsbyconnectingthepointsinthespecifiedarray.PolylineToDrawsoneormorestraightlines.PolyPolylineDrawsmultiple

8、seriesofconnectedlinesegments.填充式绘制函数Rectangle画矩形。Ellipse画椭圆。RoundRect画带圆角的矩形。Pie画椭圆的一部分,使其看起来像一个扇形。Chord画椭圆的一部分,以呈弓形。绘图工具的使用——画笔取得画笔取得库存画笔hpen=(HPEN)GetStockObject(WHITE_PEN)自定义画笔hpen=CreatePen(PS_SOLID,3,RGB(255,0,0));选入设备环境Sel

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。