A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 汪振 中级黑马   /  2013-3-2 16:19  /  5386 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

c# 如何在画布上绘制一个点,一条线,或者是一个多边形呢
  1. <p>private void button1_Click(object sender, EventArgs e)

  2. {

  3.       using (Graphics x = Graphics.FromImage(flag))

  4.             {

  5.                 x.Clear(Color.White);

  6.                 //Brush brush = new SolidBrush(Color.Red);

  7.                 Pen pen = new Pen(Color.Black, 1);


  8.                 #region//这里有26个控制点的坐标是通过Calu方法计算得来的,所以看着有些怪异

  9.                 Point ptA = new Point(Calu(0.00), picbox1.Width - Calu(0.00) - 10);//A

  10.                 Point ptB = new Point(Calu(50.00), picbox1.Width - Calu(86.60) - 10);//B

  11.                 Point ptC = new Point(Calu(100.00), picbox1.Width - Calu(0.00) - 10);//C

  12.                 Point ptD = new Point(Calu(15.00), picbox1.Width - Calu(0.00) - 10);//D

  13.                ....删减一部分...

  14.                 #endregion


  15.                 Point[] pt1 = new Point[5];

  16.                 pt1[0] = ptL; pt1[1] = ptQ; pt1[2] = ptR; pt1[3] = ptM; pt1[4] = ptB;

  17.                 x.DrawPolygon(pen, pt1);//绘制多边形区块1;(绘制一个多边形,他的顶点时pt1里边的五个点)


  18.                Rectangle rect = new Rectangle(drawPoint.X, drawPoint.Y, 3, 3);//定义矩形,参数为起点横纵坐标以及其长和宽</p><p>               //单色填充
  19.                SolidBrush b1 = new SolidBrush(Color.Blue;//定义单色画刷         
  20.                x.FillRectangle(b1, rect);//填充这个矩形(绘制一个点,并用一个3*3的矩形来表示它的位置)

  21.               x.DrawLine(pen,ptA ,ptB);(绘制一条线)


  22.                 }

  23. }
  24. </p>
复制代码
基本的在c#中进行点线面的绘制,当然还有很多其他更好的方法,特殊的需要,大家共同探讨

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

1 个回复

倒序浏览
值得学习ing!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马