注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

信息 灵感 创新

I? =Information,Inspiration,Innovation

 
 
 

日志

 
 
关于我

we are 5. Mathematics, Computation, Programming, Engineering, and Making fun of life.

网易考拉推荐

C# GDI+编程(四)  

2013-07-01 08:46:35|  分类: C# & .NET |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

3.弧线

DGI+中使用DrawArc方法完成圆弧、圆、椭圆弧、椭圆的绘制,可用的方法如下:
public void DrawArc (Pen pen,Rectangle rect,float startAngle,float sweepAngle)
public void DrawArc (Pen pen,RectangleF rect,float startAngle,float sweepAngle)
public void DrawArc (Pen pen,int x,int y,int width,int height,int startAngle,int sweepAngle)
public void DrawArc (Pen pen,float x,float y,float width,float height,float startAngle,float sweepAngle)
这里就第一种方法的参数做一个说明,其他方法的具体使用方法请参考MSDN。
Pen:画笔。
rect:定义弧线的矩形,通过对矩形的控制,将决定是圆弧还是椭圆弧。
startAngle:从X轴到弧线的起始点沿顺时针方向度量的角(单位为度)。
sweepAngle:从StartAngle参数到弧线的结束点沿顺时针方向度量的角(单位为度)。
一个绘制圆弧和圆的例子如下,注意矩形的长和宽:

private void button1_Click(object sender, EventArgs e)
{
   Graphics gp = this.CreateGraphics();
   //绘制红色圆弧
   Pen pen = new Pen(Color.Red);
   Rectangle rect = new Rectangle(10, 10, 150, 150);
   gp.DrawArc(pen, rect, 45, 180);        
   //绘制蓝色的圆
   pen = new Pen(Color.Blue);
   rect = new Rectangle(50, 50, 100, 100);
   gp.DrawArc(pen, rect, 0, 360);
   gp.Dispose();
}
运行效果如下:

C GDI+编程(四) - Lemniscate - 信息,灵感,创新

 如果想绘制长轴和短轴分别是200,150的椭圆弧和椭圆,只需做简单的修改:

private void button1_Click(object sender, EventArgs e)
{
   Graphics gp = this.CreateGraphics();
   //绘制红色椭圆弧
   Pen pen = new Pen(Color.Red);
   Rectangle rect = new Rectangle(10, 10, 200, 150);
   gp.DrawArc(pen, rect, 45, 180);        
   //绘制蓝色的椭圆
   pen = new Pen(Color.Blue);
   rect = new Rectangle(50, 50, 200, 150);
   gp.DrawArc(pen, rect, 0, 360);
   gp.Dispose();
}
程序运行结果如下:

C GDI+编程(四) - Lemniscate - 信息,灵感,创新

 另外,绘制圆形和椭圆形,还有DrawEllipse方法,其实该方法就是将DrawArc中最后两个参数分别设置为0和360,这里就不赘述了。
  评论这张
 
阅读(762)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016