- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第8章 图形图像处理【荐】.ppt
8.2.5 曲线(续) 3. 贝塞尔曲线 每段贝塞尔曲线由4个点组成,两个端点(p1为起点,p2为终点)和两个控制点(c1和c2)。曲线不经过控制点,但是控制点如同一个磁体吸引曲线,影响并引导曲线向某个方向拉伸。 8.2.5 曲线(续) 1) DrawBezier方法:绘制一段贝塞尔曲线的,常用形式: public void DrawBezier (Pen pen ,Point pt1,Point pt2,Point pt3,Point pt4 ) 其中pt1、pt2、pt3和pt4分别指定四个点。 2) DrawBeziers方法:绘制多段贝塞尔曲线,常用形式: public void DrawBezier (Pen pen ,Point[] points) 其中points是Point结构的数组,第一段贝塞尔曲线由点数组中的第1-4个点绘制而成。以后每段曲线只需要3个点:2个控制点和一个结束点。前一段曲线的结束点会自动被用作后一段曲线的起始点。 8.2.5 曲线(续) 【例8-5 】绘制曲线示例。 8.2.6 绘制椭圆和扇形 1. 绘制椭圆(DrawEllipse方法) 1)给定椭圆左上角坐标和椭圆的外接矩形的宽度和高度 public void DrawEllipse(Pen pen, int x, int y, int width, int height); 其中, pen为Pen对象, x, y为椭圆外接矩形左上角的坐标, width定义椭圆外接矩形的宽度, height定义椭圆外接矩形的高度。 2)给定椭圆外接矩形的结构 public void DrawEllipse(Pen pen, Rectangle rect); 其中,rect为Rectangle结构,用于确定椭圆的边界。 8.2.6 绘制椭圆和扇形 2. 绘制扇形(DrawPie方法) 1) public void Drawpie(Pen pen, int x, int y, int width,int height,int startAngle,int sweepAngle); 其中, pen 为Pen对象, x, y为椭圆外接左上角的坐标, width 定义扇形外接矩形的宽度, height 定义扇形外接矩形的高度, startAngle 为起始角度(以度为单位), sweepAngle 为延伸角度。 2) public void DrawPie(Pen pen, Rectangle rect, float startAngle, float sweepAngle); 其中,rect为Rectangle结构,用于确定扇形的外接矩形。 8.2.6 绘制椭圆和扇形 【例8-6】演示椭圆和扇形的绘制方法。 运行效果如下: 8.3 填充图形 对于封闭的图形: 封闭图形包括矩形、椭圆、多边形、封闭的曲线、扇形等基本图形。 Draw方法绘制 以“Fill”为前缀的方法完成填充,例如: 与椭圆对应的填充方法为FillEllipse方法。 与多边形对应的填充方法为FillPolygon方法等。 8.3.1 画刷(续) 画刷(Brush)画刷是可以与Graphics对象一起使用来创建实心形状和呈现文本的对象。可以用来填充各种图形形状,如矩形、椭圆、饼型图和多边形等。下表列出了几种不同类型的画刷。 类 说明 SolidBrush 用纯色填充图形 LinearGradientBrush 用颜色线性渐变填充图形 HatchBrush 用各种图案填充图形 TextureBrush 用基于光栅的图像(位图、JPG等)填充图形 PathGradientBrush 用渐变效果填充图形路径 8.3.2 单色画刷 1)使用SolidBrush类定义单色画刷 SolidBrush类用于定义单色画刷。该类可以填充图形,比如矩形、椭圆、多边形和路径。例如: SolidBrush solidBrush = new SolidBrush(Color.Red); Rectangle r = new Rectangle(5, 10, 100, 100); g.FillEllipse(solidBrush, r); 8.3.2 单色画刷 【例8-7】单色画刷演示示例。 运行结果如右图所示: 8.3.3 创建渐变画刷(续) 2)使用LinearGradientBrush类定义线性渐变 Line
文档评论(0)