C# Windows基础拾遗01—线条绘制篇

Windows绘制图形首先要定义DC(Device Context),在.NET中直接使用Graphics类。然后分配画图工具如画笔等,调用绘图函数进行绘制。要注意的是,画图后要记得释放Graphics以及画图工具等对象,因为图像对象占用很大的资源,不能等到.NET运行库最终自动释放。


 

1. 线条:直线刚性,曲线柔美

image

首先新建Windows Form程序,要想在窗体加载时就绘出线条,那么只能重写OnPaint ()事件,在Form_Load中是行不通的。

image

其中,

  • DrawLines()是用来绘制直线的;
  • DrawCurve()方法绘制光滑的齿条曲线,第三个参数表示曲线的张力,默认为0.5F,从例子中的绿线和蓝线可以看出:数值越高,张力越低。

2. 贝赛尔曲线

image

贝赛尔曲线主要由4个点来控制的,两个端点确定起止位置,两个控制点来决定曲线的拉力,控制点离得越远,拉力越强。

.NET中使用DrawBezier()方法绘制贝塞尔曲线。这次demo我们在按钮事件中添加。

image

另外我们可以绘制连续的贝赛尔曲线(如下图),调用的方法是DrawBeziers()。 记住:要绘制元素为n的曲线,需要提供3n+1个点才可以。

image

 

3. 弧形

image

椭圆和弧形的绘制一般是在矩形的基础上进行的。其中

  • DrawEllipse()方法用来绘制中空的椭圆.
  • DrawArc()则可以绘制部分圆弧。  具体弧的形状还要看StartAngle和SweepAngle两个参数。在上图中,红色圆弧起始角度为最右侧,然后沿顺时针方向旋转160度。

  image

 

相关文章:

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值