第9章 图形操作- 副本

2026/1/14 21:02:43

第9章 图形操作

9.1 图形操作基础

绘图对象:窗体、图片框(Picture Box)和打印机(Printer) 9.1.1 引例

例9.1(208页):绘制区间(-2π,2π)上的正弦曲线,振幅为1 Private Sub Form_Click() Dim I%, X!

Form1.Scale (-8, 2)-(8, -2)

Line (-7.5, 0)-(7.5, 0): Line (0, 1.9)-(0, -1.9) DrawWidth = 2

CurrentX = 7.5: CurrentY = 0.2: Print \ CurrentX = 0.5: CurrentY = 2: Print \ For I = -7 To 7 Line (I, 0)-(I, 0.1)

CurrentX = I - 0.2: CurrentY = -0.1: Print I Next I

For X = -6.283 To 6.283 Step 0.01 PSet (X, Sin(X)) Next X End Sub

9.1.2 坐标系统

⒈VB坐标系

默认时:原点在左上角,X轴向右,Y轴向下。单位:Twips。1英寸=1440Twips=72磅

绘图对象位置:Left、Top

绘图对象大小:Width、Height

绘图区左上角坐标:ScaleLeft、ScaleTop 绘图区大小:ScaleWidth(向右)、ScaleHeight(向下) ⒉自定义坐标系(Scale方法) 功能:自定义坐标系

格式:[对象.]Scale [(X1,Y1)-(X2,Y2)]

说明:(X1,Y1)和(X2,Y2)分别是绘图对象的左上角和右下角坐标,缺省这四个属性时,将度量单位设置为twips。

例题9.2(210页):自定义窗体的坐标系,内宽为600,内高为400,原点在中心,Y轴向上。并绘制X轴和Y轴。 Private Sub Form_Paint() Cls

Form1.Scale (-300, 200)-(300, -200)

Line (-300, 0)-(300, 0) ' 画X轴

Line (0, 200)-(0, -200) ' 画Y轴

CurrentX = 0: CurrentY = 0: Print 0 ' 标记坐标原点 CurrentX = 260: CurrentY = 50: Print \标记X轴 CurrentX = 10: CurrentY = 180: Print \标记Y轴 End Sub

9.2 绘图属性 9.2.1 当前坐标

⒈ CurrentX、CurrentY:默认的绘图位置。执行CLS方法后,这两个属性值为0。 ⒉ 例题9.3(211页):在窗体上随机显示50个“★”和50个“☆”。 Private Sub Form_Click() Dim I% Randomize Cls

For I = 1 To 100

CurrentX = Form1.ScaleWidth * Rnd CurrentY = Form1.ScaleHeight * Rnd If (I Mod 2) = 0 Then Print \★\ Else

Print \☆\ End If Next I End Sub

9.2.2 线宽与线型

1. DrawStyle属性

DrawStyle属性决定了图形方法绘制线条的类型:

值 含义

0 实线(Solid)(默认值) 1 虚线(Dash) 2 点线(Dot)

3 点划线(Dash-Dot)

4 双点划线(Dash-Dot-Dot) 5 透明(Transparent) 6 内实线(Inside Solid)

说明:若 DrawWidth 属性设置为大于 1, DrawStyle 属性设置值为 1 到 4 会画一条实线

2.DrawWidth属性

决定线条的宽度,取值范围从1到32767,单位是Pixel(像素),缺省值为1,即

一个像素。

例题9.4(212页):绘制7种不同线型的线段。 Private Sub Command1_Click() Cls Dim J%

Print \ Print \线 型 实线 长划线 点线 点划线 点点划线 透明线 内实线\ Print

Print \图 示 \

CurrentX = 600 ' 设置直线的开始位置 CurrentY = ScaleHeight / 3

DrawWidth = 1 ' 宽度为1时DrawStyle属性才能产生线型 For J = 0 To 6

DrawStyle = J ' 定义线的形状 CurrentX = CurrentX + 150 '当前点向右移150 Line -Step(600, 0) ' 向右画长600的线段 Next J End Sub

9.2.3 填充与色彩

⒈FillStyle

FillStyle属性:规定封闭图形的填充类型:

值 含义

0 实心(Solid)

1 透明(Transparent)(默认值) 2 水平线(Horizontal Line) 3 垂直线(Vertical Line)

4 上斜线(Upward Diagonal) 5 下斜线(Downward Diagonal) 6 交叉线(Cross)

7 斜交叉线(Diagonal Cross)

⒉FillColor:规定填充颜色

⒊RGB函数

⑴功能:用红、绿、蓝三基色产生颜色 ⑵格式:RGB(红,绿,蓝) 红,绿,蓝取值范围:0~255

⒋ QBColor函数 ⑴功能:产生颜色

⑵格式:QBColor(颜色码) 颜色码:0~15

例题9.5(214页):颜色渐变,由黑到白 Private Sub Form_Click() Dim J%, X!, Y!, Sp! X = Form1.ScaleWidth Y = Form1.ScaleHeight Sp = 255 / Y For J = 0 To Y

Line (0, J)-(X, J), RGB(J * Sp, J * Sp, J * Sp) ' 画线

'Line (0, j)-(x, j), RGB(j * sp, 0, j * sp) '变2色画线 黑色到亮品红色 'Line (0, j)-(x, j), RGB(j * sp, 0, 0) ' 变1色画线 Next J End Sub

9.3 图形方法

9.3.1 Line方法

1.格式:

[对象.]Line[[Step](x1,y1)]-[Step](x2,y2)[,[颜色][,B[F]]] 2.功能:

在指定的两点之间用指定的颜色画一条直线;或以指定的两点为对角线的端点画一个指定颜色的矩形。 3.参数:

(x1,y1):起点坐标,缺省时即为当前点(由属性对CurrentX和CurrentY决定)。 (x2,y2):终点坐标。

Step:表明后面的参数是相对坐标,此时(x1,y1)是相对当前点(CurrentX,CurrentY)的坐标,而(x2,y2)是相对起始点的坐标;缺省Step时,其后的(x1,y1)或(x2,y2)为绝对坐标。

颜色:本参数确定线或边框的颜色,缺省时,线或边框的颜色为ForeColor。 B:本参数表明画矩形,缺省时表明画线。

F:本参数指定用边框颜色填充矩形内部;缺省时,矩形内部的填充色为FillColor。

2

例题9.6(215页):绘制函数f(x)=x在区间[0.3,1]上的积分区域,填充色为蓝色。 Private Sub Picture1_Click() Dim S#, X#

Picture1.Scale (-0.5, 1)-(1.5, -0.2) ' 定义坐标系 Picture1.Line (-1, 0)-(2, 0)


第9章 图形操作- 副本.doc 将本文的Word文档下载到电脑
搜索更多关于: 第9章 图形操作- 副本 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219