高分求:如何在winform指定区域用一组坐标画多边形的C# 实现方法!
用一组二维x,y坐标,求在form1中某个区域内,用给出的坐标画出多边形的C#实现方法.不能使用第三方组件,用GDI.
------解决方案--------------------.NET Framework 类库     
 Graphics.DrawPolygon 方法 (Pen, Point[])     
 绘制由一组 Point 结构定义的多边形。    
 命名空间:System.Drawing 
 程序集:System.Drawing(在 system.drawing.dll 中)   
 参数 
 pen 
 Pen,它确定多边形的颜色、宽度和样式。    
 points 
 Point 结构数组,这些结构表示多边形的顶点。  
 数组中的每对相邻的两个点指定多边形的一条边。另外,如果数组的最后一个点和第一个点不重合,则这两个点指定多边形的最后一条边。     
 下面的代码示例设计用于 Windows 窗体,它需要 PaintEventArgse(这是 Paint 事件处理程序的参数)。代码执行下列操作:    
 创建黑色钢笔。   
 创建一个数组,该数组由表示多边形顶点的七个点组成。   
 将该多边形绘制到屏幕。   
 public void DrawPolygonPoint(PaintEventArgs e) 
 {                
     // Create pen. 
     Pen blackPen = new Pen(Color.Black, 3);                
     // Create points that define polygon. 
     Point point1 = new Point(50,  50); 
     Point point2 = new Point(100,  25); 
     Point point3 = new Point(200,   5); 
     Point point4 = new Point(250,  50); 
     Point point5 = new Point(300, 100); 
     Point point6 = new Point(350, 200); 
     Point point7 = new Point(250, 250); 
     Point[] curvePoints = 
              { 
                  point1, 
                  point2, 
                  point3, 
                  point4, 
                  point5, 
                  point6, 
                  point7 
              };                
     // Draw polygon to screen. 
     e.Graphics.DrawPolygon(blackPen, curvePoints); 
 }
------解决方案--------------------一是取PictureBox的客户区大小,然后计算坐标转换 
 需要注意的是的逻辑坐标与绘图坐标是不同的 
    将 x - >  gx  y - > gy  
 二是取PictureBox的CreateGraphics创建绘图板 
    用Graphics对象的DrawPolygon绘制多边形 
    释放Graphics对象 
 三如果你需要保存该多边形,可能需要考虑重绘,那就需要用链表之类的来保存该 
 数据。