VC中MFC绘图详细教程.ppt

上传人:sh****n 文档编号:6441356 上传时间:2020-02-25 格式:PPT 页数:16 大小:364.05KB
返回 下载 相关 举报
VC中MFC绘图详细教程.ppt_第1页
第1页 / 共16页
VC中MFC绘图详细教程.ppt_第2页
第2页 / 共16页
VC中MFC绘图详细教程.ppt_第3页
第3页 / 共16页
点击查看更多>>
资源描述
1 第十章图形设备接口 中国地质大学信息工程学院林伟华 VisualC 2 本章主要内容 设备环境GDI对象使用画笔使用画刷输出文本映射模式显示位图 3 GDI GDI GraphicsDeviceInterface 1 GDI和Windows设备驱动程序来支持设备无关性 2 负责系统与用户或绘图程序之间的信息交换 并控制在输出设备上显示图形或文字 3 应用程序主窗口 菜单 对话框都由GDI绘制 GDI 4 设备环境 设备环境 设备环境 DeviceContext 有译为设备描述表 设备上下文 1 是绘图属性 字体 颜色等 和方法 各种绘图函数 的集合 2 是一个用来确定或改变任何设备的GDI输出位置和形象的属性集合CDC类CClientDCCWindowDCCPaintDCCMetaFileDC 5 1 CWindowDC和CClientDCCPaintDC区别CWindowDC提供客户区和非客户区画图的设备环境 坐标原点在屏幕左上角CClientDCCPaintDC提供画图的设备环境 坐标原点在客户区左上角 2 CClientDC和CPaintDC区别CPaintDC是响应WM PAINT消息 用在OnPaint 函数中 只支持屏幕显示CClientDC不响应WM PAINT消息 只担负此时的绘图工作 支持屏幕显示 也支持打印CDC常用函数 参见MSDN 设备环境 设备环境 6 获取设备环境 1 使用GetDC 函数CDC CWndGetDC intReleaseDC CDC pDC 2 直接构造CDC对象用声明一个CDC类或其派生类对象的方式来获取设备环境CClientDCdc CWnd 设备环境 设备环境 7 GDI对象提供更丰富的图形操作函数 设备环境类提供函数进行简单的图形绘制CGdiObjectCBitmapCBrushCPaletteCPenCRgn GDI对象 GDI对象 8 使用画笔 画刷 使用画笔 画刷 1 构建画笔 画刷CPen CPen intnPenStyle intnWidth COLORREFcrColor CPen intnPenStyle intnWidth constLOGBRUSH pLogBrush intnStyleCount 0 constDWORD lpStyle NULL nPenStyle 参看课本P146nWidth 1时 第一个参数中的PS DASH 虚线 PS DOT 点线 PS DASHDOT 点划线 PS DASHDOTDOT 双点划线 无效crColor RGB 255 255 255 颜色CBrush COLORREFcrColor CBrush intnIndex COLORREFcrColor CBrush CBitmap pBitmap crColor RGB 255 255 255 颜色nIndex 画刷阴影线风格pBitmap 位图画刷 9 2 选入画笔 将该画笔选入到设备环境中CPen SelectObject CPen pPen CBrush SelectObject CBrush pBrush virtualCFont SelectObject CFont pFont intSelectObject CRgn pRgn 3 调用绘图函数输出 使用画笔 画刷 使用画笔 画刷 10 输出文本 输出文本 1 声明字体对象CFontNewFont 2 创建字体CreateFont intnheight intnWidth 高 宽intnEscapement 每行文字相以于页底的角intnOrienation 每个 DWORDnWeight 字体粗细DWORDdwltalic 非零表示倾斜DWORDdwUnderline 非零表示下划线DWORDdwStrikeout 非零表示中划线DWORDdwCharset 字符集DWORDdwOutputPrecision 输出精度DWORDdwClipPrecision 剪裁精度DWORDdwQuality 输出质量DWORDdwPitchAndFamily 字体系列DWORDlpszFaceName 字体名称 11 NewFont CreateFont 3 将新字体选入设备环境pDC SelectObject 4 用TextOut 输出 输出文本 输出文本 12 映射模式 坐标系统可分为逻辑坐标 设备坐标 窗口 逻辑坐标系上程序员设置的一个区域 视口 实际输出设备 物理设备坐标系 上程序员设定的一个区域 映像模式的设置SetMapMode hdc nMapMode 设置映像模式nMapMode GetMapMode hdc 得到映像模式SetWindowExtEx HDChdc intnHeight intnWidth LPSIZElpSize 设置窗口区域SetViewportExtEx HDChdc intnHeight intnWidth LPSIZElpSize 设置视口区域SetWindowOrgEx HDChdc intx inty LPPOINTlpPOINT 设置窗口原点 逻辑坐标 设备坐标 13 程序员直接在一个统一的逻辑坐标系中进行图形的绘制和操作 而不考虑输出坐标系的情况 映像模式定义了将逻辑坐标转为设备的度量单位以及设备的x y方向 映像模式将一个逻辑坐标映像为坐标系设定MM ANISOTROPIC系统可选MM ISOTROPIC系统确定可选MM HIENGLISH0 001英寸x向右y向上MM HIMETRIC0 01毫米x向右y向上MM LOENGLISH0 01英寸x向右y向上MM LOMETRIC0 1毫米x向右y向上MM TEXT1个像素x向右y向下MM TWIPS1 1440英寸x向右y向上 映射模式 映射模式 14 显示位图 从资源中加载位图 1 声明Cbitmap对象 并从资源中载入位图CBitmapbitmap bitmap LoadBitmap IDB BITMAP 2 创建一个兼容的DCCDCdc dc CreateCompatibleDC pDC 3 将位图选入兼容DCdc SelectObject 该函数要用到位图bmInfo信息 显示位图 15 BitBlt 按位图原来的比例显示位图StretchBlt 可对位图进行放大或压缩从文件中加载位图CBitmapbitmap HBITMAPhbitmap HBITMAP LoadImage NULL AAA 位图文件名IMAGE BITMAP 图象类别0 0 宽度和高度LR LOADFROMFILE 从文件加载标志 bitmap Attach hbitmap 显示位图 显示位图
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!