资源预览内容
第1页 / 共11页
第2页 / 共11页
第3页 / 共11页
第4页 / 共11页
第5页 / 共11页
第6页 / 共11页
第7页 / 共11页
第8页 / 共11页
第9页 / 共11页
第10页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
在实际应用中,很多图形是由点和线构成的,vb.net 的 Graphics 类提供了很多画线图的方法,我们可以使用这些重载了的方法组合出丰富的图案来。下面我们就来了解下这些绘线图的方法。一、DrawLine 方法该方法绘制一条连接由坐标对指定的两个点的线条,所以我们需要指定这两个点的坐标,如下所示:DrawLine(pen,x1,y1,x2,y2)或者 DrawLine(pen,Point1, Point2)下面示例将在 PictureBox 控件表面绘制一条直线:Dim g As Graphics = Me.PictureBox1.CreateGraphicsDim mpen As New Pen(Color.Red)g.DrawLine(mpen, 0, 80, 0, 160)也可以使用如下代码来实现一样的效果:Dim g As Graphics = Me.PictureBox1.CreateGraphicsDim mpen As New Pen(Color.Red)Dim p1 As Point = New Point(0, 80)Dim p2 As Point = New Point(0, 160)g.DrawLine(mpen, p1, p2)当然,我们也可以使用 DrawLine 方法画出更加复杂的图形,如下代码所示:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim g As Graphics = Me.PictureBox1.CreateGraphicsDim mpen As New Pen(Color.Red)Dim i As IntegerFor i = 0 To 160 Step 10g.DrawLine(mpen, 0, 80, i, 0)g.DrawLine(mpen, 0, 80, i, 160)g.DrawLine(mpen, 160, 80, 160 - i, 160)g.DrawLine(mpen, 160, 80, 160 - i, 0)NextEnd Sub运行后效果如下图一所示:图一:使用 DrawLine 方法画复杂图形二、DrawLines 方法该方法绘制一系列连接一组 Point 结构的线段,它按顺序把每个点都连接起来,构成一段曲线,DrawLines 的形式如下:DrawLines(Pen, Point()Point()参数就是一个由一系列的点构成的数组。如下代码所示,我们要在 PictureBox 控件中绘制一条由四个不同的坐标点构成的曲线:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim g As Graphics = Me.PictureBox1.CreateGraphicsDim mpen As New Pen(Color.Red)Dim Points As PointF() = New PointF(0.0F, 0.0F), New PointF(10.0F, 15.0F), New PointF(20.0F, 20.0F), New PointF(50.0F, 100.0F)g.DrawLines(mpen, points)End Sub运行效果如下图二所示:图二:使用 DrawLines 方法画曲线如图曲线的起点、两个折点、终点就是我们 Pionts 变量中指定的四个点。该方法比较适用于连接如股票的波动线等由大量的点构成的波动曲线。三、DrawEllipse 方法使用 DrawEllipse 方法可以绘制一个由边框定义的椭圆,该边框是由椭圆的左上角坐标,高度以及宽度决定的。DrawEllipse 方法的常用形式:DrawEllipse(x,y,width,height)x,y 为椭圆的左上角坐标点, width 为椭圆的矩形宽,height 为椭圆的矩形高如下代码所示,我们在 PictureBox 控件中绘制一个红色的椭圆:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim g As Graphics = Me.PictureBox1.CreateGraphicsDim mpen As New Pen(Color.Red)g.DrawEllipse(mpen, 0, 0, 150, 150)End Subhttp:/www.qqread.com/book/myvbnet/my0043.html运行效果如下图三所示:图三:使用 DrawEllipse 方法画椭圆在以上示例中,我们绘制出来的是一个正圆,正圆实际上就是椭圆的特殊表现。四、DrawArc 方法用 DrawArc 方法可以一段椭圆弧,方法格式如下:DrawArc(Pen, x, y, Swidth, height, StartAngle, SweepAngle)x, y, Swidth, height 这四个参数指定了椭圆的结构StartAngle 为椭圆弧的起始角度,该角度是在指以椭圆的圆心为坐标原点、X 轴向右为正方向的坐标系中,圆弧起点与 X 轴的夹角。SweepAngle 为圆弧扫过的角度值,以 StartAngle 参数所指定的起点沿顺时针方向扫过的度数。如下示例代码:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim g As Graphics = Me.PictureBox1.CreateGraphicsDim mpen As New Pen(Color.Red)g.DrawArc(mpen, 0.0F, 0.0F, 100.0F, 100.0F, 0.0F, 270.0F)End Sub运行效果如下图四(一)所示。我们把g.DrawArc(mpen, 0.0F, 0.0F, 100.0F, 100.0F, 0.0F, 270.0F)改为g.DrawArc(mpen, 0.0F, 0.0F, 100.0F, 100.0F, 90.0F, 270.0F)http:/www.qqread.com/book/myvbnet/my0043.html运行后如下图四(二)所示:图四(一):使用 DrawArc 方法画椭圆弧图四(二):使用 DrawArc 方法画椭圆弧对比以上两图,我们可以知道,决定圆弧的起始位置的参数为:StartAngle, 而 SweepAngle 决定了圆弧扫过的度数。五、DrawPie 方法DrawPie 方法画的是一个饼状图,它和 DrawArc 方法一样,先画一条椭圆弧,但是它还把两个端点与圆心连接起来,形成一个饼状图,它的格式与 DrawArc 方法一样,这里就不做说明了。如下代码所示:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim g As Graphics = Me.PictureBox1.CreateGraphicsDim mpen As New Pen(Color.Red)g.DrawPie(mpen, 0.0F, 0.0F, 100.0F, 100.0F, 90.0F, 270.0F)End Sub运行后效果如下图五所示:图五:使用 DrawPie 方法画饼状图http:/www.qqread.com/book/myvbnet/my0043.html六、DrawPolygon 方法我们可以使用 DrawPolygon 方法来绘制任意的多边形,该方法格式如下:DrawPolygon(pen,Points()Points()为坐标点数组,我们使用下面代码来演示通过 DrawPolygon 方法绘制一个不规则的四边形,代码如下所示:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim g As Graphics = Me.PictureBox1.CreateGraphicsDim mpen As New Pen(Color.Red)定义四边形的四个顶点的坐标Dim p(3) As Pointp(0).X = 100p(0).Y = 15p(1).X = 80p(1).Y = 90p(2).X = 90p(2).Y = 120p(3).X = 130p(3).Y = 150g.DrawPolygon(mpen, p)End Sub运行后效果如下图六所示:图六:用 DrawPolygon 画一个四边形七、DrawRectangle 方法DrawRectangle 方法可以绘制由坐标对、宽度和高度指定的矩形。它的格式如下:DrawRectangle(pen, x, y, width, height)其中 X、Y 为矩形的左上角的 XY 坐标点,width, height 分别为矩形的宽和高。下面示例代码是在 PictureBox 中绘制一个矩形:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim g As Graphics = Me.PictureBox1.CreateGraphicsDim mpen As New Pen(Color.Red)g.DrawRectangle(mpen, 20, 30, 100, 80)End Sub运行后效果如下图七所示:图七:画一个矩形http:/www.qqread.com/book/myvbnet/my0043.html八、DrawRectangles 方法DrawRectangles 方法和 DrawRectangle 方法一样都是用于画矩形的,但是DrawRectangles 方法是绘制一系列由 Rectangle 结构指定的矩形。其格式如下:DrawRectangles(Pen, Rectangle()如下代码所示,我们在 PictureBox 中绘制三个矩形:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim g As Graphics = Me.PictureBox1.CreateGraphicsDim mpen As New Pen(Color.Red)Dim rects As RectangleF() = New RectangleF(10.0F, 10.0F, 140.0F, 120.0F), New RectangleF(20.0F, 20.0F, 100.0F, 80.0F), New RectangleF(30.0F, 30.0F, 50.0F, 40.0F)g.DrawRectangles(mpen, rects)End Sub运行效果如下图所示:图
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号