- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 计算机绘图原理及其应用
北京理工大学计算机系(共98页) 计算机绘图原理及其应用 主要内容 计算机绘图原理 GDIClock程序分析 设计打印系统 10.1 计算机绘图原理 图形 通过数学方法生成的规则的图案 图像 通过像素构成的图片 什么是GDI+ GDI:Graphic Device Interface GDI+ 是由 .NET Framework 中的 System.Drawing 命名空间提供的一组类,它使开发人员可以利用 Windows 内置的图形功能轻松地创建图形应用程序。 使用GDI+绘图 GDI+命名空间 System.Drawing System.Drawing.Drawing2D System.Drawing.Imaging System.Drawing.Printing System.Drawing.Text System.Drawing.Design 所有这些名字空间都在动态链接库 System.Drawing.DLL中。 绘图表面Graphics对象(1) Graphics对象: 表示可视元素的绘图界面,所有可视元素的实际呈现是由Graphics对象来完成的 绘图表面的特性: (1)长*宽 (2)分辨率:像素/英寸(PPI) 点/英寸(DPI) (3)颜色深度 绘图表面Graphics对象(2) 屏幕上的窗口 送到打印机上的页面 内存中的位图或图像 获取Graphics对象 (1)从Paint事件的参数中获取 (2)用 CreateGraphics 方法创建 (示例工程:DrawOnButton ) (3)对Image对象调用Graphics.FromImage获取 (示例工程:DrawOnImage ) 图形重绘原理 示例工程:PaintEvent 绘图基本数据结构 点:Point(X,Y)与PointF 矩形:Rectangle 左上角(X,Y)——右下角(X,Y) 无所不在的矩形——每个可绘图的对象都有一个矩形 Size与SizeF 矩形的重要方法 某点是否在矩形内?——Contains 矩形的放大与缩小:Inflate(为正放大,为负缩小) 矩形的重要方法 求两个矩形的交集: Intersect 求并集:Union 平移:Offset 颜色 (1) 颜色的RGB模型 颜色(2) 颜色的HSB模型 Hue:色调 0…360 Saturation:饱和度 0…1 Brightness:亮度 0…1 使用颜色 创建Color对象: Dim clr As Color clr = Color.FromArgb(255, 255, 0, 255) 另一个方法: Color.FromKnownColor(…) 颜色的Alpha通道(1) Alpha 表示所呈现图形后面的对象的透明度。Alpha 混合处理的颜色对于各种底纹和透明度效果很有用。如果需要指定 Alpha 部分,则它应为 Color.FromArgb 方法中四个参数的第一个参数,并且需要从 0 到 255 之间的一个整数 颜色的Alpha通道(2) 示例工程Alpha 笔 笔用于描绘线条(示例:LineCap ) 画刷(1) 画刷用于填充图形 纹理画刷 实例(MyArtist ) 画刷(2) 渐变画刷(示例工程:UseGradient ) 字体(1) 对联(实例:DuiLian) 字体(2) 艺术字体(实例:BeautifulText ) 路径 GraphicsPath:此类封装了一系列相连接的直线、曲线、圆弧等围成的图形 示例工程UsePath 区域 示例工程:UseRegion 区域的有限与无限 展示Windows的“画笔”程序 应用区域(1) 给绘图表面指定一个文字形状的区域示例:ArtistText 应用区域(2) 异形窗体 (示例OtherShapeForm ) 坐标系(1) 直角坐标系与屏幕坐标系 坐标系(2) 极坐标系 坐标变换(1) 平移: g.TranslateTransform(100, 75) 坐标变换(2) 平移的应用 坐标平移代码 Private Sub Form1_Paint(……) Handles MyBase.Paint Dim g As Graphics g = e.Graphics g.TranslateTransform(-3, -3) g.DrawString(中国人, New Font(宋体, 80, FontStyle.Bold), Brushes.Red, 100, 100) g.ResetTransform() g.DrawString(中国人, Ne
文档评论(0)