- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
介绍完GDI+图形图像技术的几个基本对象,下面通过这些基本对象绘制常见的几何图形。常见的几何图形包括直线、矩形和椭圆等。通过对本节的学习,读者能够轻松掌握这些图形的绘制方法。 16.2 基本图形绘制 1.绘制直线 调用Graphics类中的DrawLine方法,结合Pen对象可以绘制直线。DrawLine方法有以下两种构造函数。 (1)第一种用于绘制一条连接两个Point结构的线,其语法如下: public void DrawLine (Pen pen,Point pt1,Point pt2) pen:Pen对象,它确定线条的颜色、宽度和样式。 pt1:Point结构,它表示要连接的第一个点。 pt2:Point结构,它表示要连接的第二个点。 (2)第二种用于绘制一条连接由坐标指定的两个点的线条,其语法如下: public void DrawLine (Pen pen,int x1,int y1,int x2,int y2) DrawLine方法的参数说明如表16.3所示。 表16.3 DrawLine方法的参数说明 16.2.1 GDI+中的直线和矩形 参数 说明 pen Pen对象,它确定线条的颜色、宽度和样式 x1 第一个点的x坐标 y1 第一个点的y坐标 x2 第二个点的x坐标 y2 第二个点的y坐标 【例16-8】 下面创建一个控制台应用程序,在Panel控件中绘制正弦和余弦,运行结果如图16-7和16.8所示。(实例位置:光盘\MR\源码\第16章\16-8) 图16-7 绘制正弦 图16-8 绘制余弦 主要代码如下: private void panel1_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; //实例化一个Graphics类 if (drawmode == DrawMode.none) //如果要清除 { g.Clear(this.BackColor); //清除 return; } else { Point[] points = new Point[2 * 360]; //创建一个点数组 if (drawmode == DrawMode.cos) //如果要绘制余弦曲线 { for (int i = 0; i points.Length; i++) //实例化要绘制余弦曲线所需的点 { points[i] = new Point(i - 360, Convert.ToInt32(-60 * Math.Cos(i * Math.PI / 180.0))); } } else { for (int i = 0; i points.Length; i++) //实例化正弦曲线所需的点 { points[i] = new Point(i - 360, Convert.ToInt32(-60 * Math.Sin(i * Math.PI / 180.0))); } } int halfWidth = panel1.Width / 2; int halfHeight = panel1.Height / 2; Pen pen1 = new Pen(Color.Blue, 2); //实例化画笔 //定义画笔线帽 AdjustableArrowCap arrow = new AdjustableArrowCap(8, 8, false); pen1.CustomEndCap = arrow; g.DrawLine(pen1, 7, halfHeight, Width - 7, halfHeight);//画横坐标轴 g.DrawLine(pen1, halfWidth, Height - 5, halfWidth, 5);//画纵坐标轴 g.TranslateTransform(halfWidth, halfHeight); //确定坐标原点 g.DrawLines(Pens.Red, points); //画曲线 } } 2.绘制矩形
您可能关注的文档
- C#网络编程技术教程 教学课件 作者 金华 华进 第4章.ppt
- C#网络编程技术教程 教学课件 作者 金华 华进 第5章.ppt
- C#网络编程技术教程 教学课件 作者 金华 华进 第6章.ppt
- C#网络编程技术教程 教学课件 作者 金华 华进 第7章.ppt
- C#网络编程技术教程 教学课件 作者 金华 华进 第8章.ppt
- C#网络编程技术教程 教学课件 作者 金华 华进 第9章.ppt
- C#网络编程技术教程 教学课件 作者 金华 华进 第10章.ppt
- C#网络编程技术教程 教学课件 作者 金华 华进 第11章.ppt
- C#网络应用编程 第2版 教学课件 作者 马骏 第0章 课程介绍.ppt
- C#网络应用编程 第2版 教学课件 作者 马骏 第01章 概述.ppt
- C#应用开发与实践 教学课件 作者 胡学钢 第17章 C#语言新特性.ppt
- C#应用开发与实践 教学课件 作者 胡学钢 第18章 综合案例——进销存管理系统.ppt
- C#应用开发与实践 教学课件 作者 胡学钢 第19章 课程设计——雷速下载专家.ppt
- C#应用开发与实践 教学课件 作者 胡学钢 第20章 课程设计——快递单打印系统.ppt
- C#语言程序设计李继武 彭德林电子教案 第1章.ppt
- C#语言程序设计李继武 彭德林电子教案 第2章.ppt
- C#语言程序设计李继武 彭德林电子教案 第3章.ppt
- C#语言程序设计李继武 彭德林电子教案 第4章.ppt
- C#语言程序设计李继武 彭德林电子教案 第5章.ppt
- C#语言程序设计李继武 彭德林电子教案 第6章.ppt
文档评论(0)