绘图方法-2012052514090165

上传人:宝路 文档编号:49574794 上传时间:2018-07-31 格式:PPT 页数:27 大小:578.84KB
返回 下载 相关 举报
绘图方法-2012052514090165_第1页
第1页 / 共27页
绘图方法-2012052514090165_第2页
第2页 / 共27页
绘图方法-2012052514090165_第3页
第3页 / 共27页
绘图方法-2012052514090165_第4页
第4页 / 共27页
绘图方法-2012052514090165_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《绘图方法-2012052514090165》由会员分享,可在线阅读,更多相关《绘图方法-2012052514090165(27页珍藏版)》请在金锄头文库上搜索。

1、 Visual Basic程序设计岁月无痕,文字有声 才华是血 汗的结晶 。 才华是 刀刃,辛 苦是磨刀 石。 http:/www.jsj. 第第7 7章章 绘图方法绘图方法http:/ 台州学院计算机系台州学院计算机系2才华是血汗的结晶。 才华 是刀刃,辛苦是磨刀石。 岁月无痕,文字有声 本章内容本章内容 vv7.17.1 坐标系统坐标系统 7.1.17.1.1 坐标刻度坐标刻度 7.1.27.1.2 自定义坐标系自定义坐标系 vv7.27.2 绘图属性绘图属性 7.2.17.2.1当前坐标当前坐标 7.2.27.2.2使用颜色使用颜色 vv7.37.3绘图方法绘图方法 7.3.17.3.1

2、画点方法画点方法PsetPset 7.3.27.3.2画线、矩形方法画线、矩形方法LineLine 7.3.37.3.3画圆、圆弧和椭圆方法画圆、圆弧和椭圆方法CircleCircle vv7.47.4绘图应用实例绘图应用实例http:/ 台州学院计算机系台州学院计算机系3才华是血汗的结晶。 才华 是刀刃,辛苦是磨刀石。 岁月无痕,文字有声 7.1 坐标系统v在Visual Basic中,容器都有一个自己默认的坐标系, 坐标系中的坐标原点在容器里的左上角,X轴向右为正 、Y轴向下为正,如图7-1所示窗体容器的默认坐标系。(0,0)XYhttp:/ 台州学院计算机系台州学院计算机系4才华是血汗的

3、结晶。 才华 是刀刃,辛苦是磨刀石。 岁月无痕,文字有声 7.1.1坐标刻度v 在Visual Basic中,容器的默认坐标系其缺省的坐标刻度是Twip (缇)。我们在程序设计中,也可以使用其它的刻度单位如:磅 和毫米等等。这些可通过设置容器的ScaleMode属性进行选择改 变坐标系统的刻度单位。其ScaleMode的属性值如表7-1所示。http:/ 台州学院计算机系台州学院计算机系5才华是血汗的结晶。 才华 是刀刃,辛苦是磨刀石。 岁月无痕,文字有声 7.1.2自定义坐标系v1自定义坐标系的Scale方法 格式:容器名.Scale (x1,y1)-(x2,y2) 功能:定义容器(缺省容器

4、名指窗体)左上角的坐标为 (x1,y1),右下角的坐标值为(x2,y2)。 例如:用下列语句是在图片框控件中设置自己的坐标系,且 图片框左上角的坐标为(-2,1),右下角的坐标是(2,- 1),则原点在图片框中心。 Picture1.Scale (-2 * 3.14, 1)-(2 * 3.14, -1) 使用无参数的Scale方法(如“容器名.Scale”),则可以使 该容器的坐标还原为系统默认的坐标系。http:/ 台州学院计算机系台州学院计算机系6才华是血汗的结晶。 才华 是刀刃,辛苦是磨刀石。 岁月无痕,文字有声 v2使用属性自定义坐标系 除了用Scale方法自定义坐标系外,也可以使用如

5、下四个容器 类对象的属性来定义坐标系,效果一样。 ScaleLeft:容器左上角的横坐标,缺省值为0。 ScaleTop:容器左上角的纵坐标,缺省值为0。 ScaleWidth:容器自身的宽度值。 ScaleHeight:容器自身的高度值。 若容器左上角的坐标为(x1,y1),右下角的坐标值为(x2,y2) ,则: 容器名.ScaleLeft=x1 容器名.ScaleTop=y1 容器名.ScaleWidth=x2-x1 容器名.ScaleHeight=y2-y1 故上述例子也可这样来自定义坐标系: Picture1.ScaleLeft = -2 * 3.14 Picture1.ScaleTo

6、p = 1 Picture1.ScaleWidth = 4 * 3.14 Picture1.ScaleHeight = -2 7.1.2自定义坐标系http:/ 台州学院计算机系台州学院计算机系7才华是血汗的结晶。 才华 是刀刃,辛苦是磨刀石。 岁月无痕,文字有声 7.2.1当前坐标v 当前坐标是指在坐标系中的当前位置。在容器的某一特定位置要 输出一结果时,就要用到当前坐标。与当前坐标有关的两个属性 : CurrentX属性:当前点在容器内的横坐标(数值类型)。 CurrentY属性:当前点在容器内的纵坐标(数值类型)。 v 在设置CurrentX、CurrentY属性后,所设值就是下一个输出

7、方法 的当前位置。 如执行下列程序,则在图片框的中心输出“0”。 Private Sub Picture1_Click() Picture1.Scale (-2 * 3.14, 1)-(2 * 3.14, -1) Picture1.CurrentX = 0 Picture1.CurrentY = 0 Picture1.Print “0“ End Sub v 在使用Cls方法后,CurrentX、CurrentY属性值为0。http:/ 台州学院计算机系台州学院计算机系8才华是血汗的结晶。 才华 是刀刃,辛苦是磨刀石。 岁月无痕,文字有声 7.2.2使用颜色v 在使用图形方法绘图时要使用不同的颜

8、色,Visual Basic中使用 的颜色用一个长整型数(通常用16进制)表示,如&HFFFF00&。 其数值由3部分组成:右边的两位(16进制数,下同)代表红色 的值,中间的两位代表绿色的值,左边的两位代表蓝色的值。v 每个值都可以取0到255之间的数值,因此共有256的立方种不同 的颜色取值。 一是在设计阶段,可以通过在对象的属性窗口中选择需要设置的颜色属性 ,用打开的“调色板”对话框进行颜色设置。 二是程序运行运行阶段,可以使用颜色函数、使用系统预定义好的颜色常 量、直接赋值或使用通用对话框中的“颜色”对话框来选取颜色。http:/ 台州学院计算机系台州学院计算机系9才华是血汗的结晶。

9、才华 是刀刃,辛苦是磨刀石。 岁月无痕,文字有声 7.2.2使用颜色v 1颜色函数 v Visual Basic提供了两个专门处理颜色的函数:RGB和QBColor。 v (1)RGB函数 格式:RGB(Red,Green,Blue) 例如:语句Form1.BackColor = RGB(255,255,0),用来将窗体Form1的背 景色设置为黄色。 v (2) QBColor(参数) v 2颜色常量 颜色常量是在Visual Basic系统内部预定义好的常量,程序设计时可以不 需要声明就可以直接使用。如:Form1.BackColor = vbYellow v 3直接赋值 如果知道具体的颜

10、色值,也可以直接给颜色属性赋值。 例如:语句Form1.BackColor=&HFFFF00&,将窗体的背景色设置为黄色。http:/ 台州学院计算机系台州学院计算机系10才华是血汗的结晶。 才华 是刀刃,辛苦是磨刀石。 岁月无痕,文字有声 7.2.3线宽和线型v 7.2.3线宽和线型 v 1线宽 DrawWidth属性:用以设置点的大小或线的宽度。以像素为单位,最小值 为1。 v 2线型 DrawStyle属性:设置所画线的形状。 v 7.2.4填充 v 在绘图中,如果图形是封闭的,就可以进行填充,与填充有关的 两个属性。 v 1填充图案 FillStyle属性:设置填充的图案样式,可取值0

11、7之间。 v 2填充颜色 FillColor属性:设置填充的颜色。http:/ 台州学院计算机系台州学院计算机系11才华是血汗的结晶。 才华 是刀刃,辛苦是磨刀石。 岁月无痕,文字有声 7.3.1画点方法Psetv Pset方法用于在对象的指定位置用某一颜色画点。 格式:容器名.Pset step(x,y),颜色 其中:(x,y)为画点的坐标。step表示用当前画点位置的相对值。颜色 为画点的颜色值,缺省为用容器对象的前景色(ForeColor)画点。该方 法所画点的大小,取决于容器对象的DrawWidth属性值。 v 【例7-1】单击窗体,用Pset方法画出-2,2上的正弦曲线和 余弦曲线。

12、 v 分析: (1)由于正弦曲线和余弦曲线的取值都在-1和1之间,且要求画出-2, 2区间上的,因此可以先用Scale方法定义坐标系,使窗体对象的左上角 坐标为-2,1,而右下角的坐标为2,-1,然后再用Pset方法画出该 坐标系。 (2)单击窗体时,根据x从-2,2的不断取值,用y=sin(x)和 y=cos(x)求出y,然后在(x,y)点用Pset画出即可(用循环实现)。http:/ 台州学院计算机系台州学院计算机系12才华是血汗的结晶。 才华 是刀刃,辛苦是磨刀石。 岁月无痕,文字有声 v 依据以上分析,可得程序代码如下: v Const pi = 3.1416 v Private Su

13、b Form_click() v Dim x As Single v For x = -2 * pi To 2 * pi Step 0.01 v Form1.PSet (x, Sin(x), vbBlue v Form1.PSet (x, Cos(x), vbRed v Next x v End Sub v Private Sub Form_Load() v Dim x As Single, y As Single v Form1.Scale (-2 * pi, 1)-(2 * pi, -1) v For x = -2 * pi To 2 * pi Step 0.01 v Form1.PSet

14、 (x, 0) : Next x v For y = -1 To 1 Step 0.001 v Form1.PSet (0, y) :Next y v Form1.CurrentX = 0.1:Form1.CurrentY = -0.01:Print “0“ v End Sub 【例7-1】用Pset方法画出正弦曲线和余弦曲线http:/ 台州学院计算机系台州学院计算机系13才华是血汗的结晶。 才华 是刀刃,辛苦是磨刀石。 岁月无痕,文字有声 【例7-2】图像复制v【例7-2】将图片框Picture1中图像复制到图片 框Picture2,要求保持色彩、纵横比例不变。分析: (1)当程序运行时,

15、图片框 Picture1中已加载图像,且“复 制”按钮能用,“结束”按钮不能 用。其运行界面如图7-3所示。 (2)当单击“复制”按钮后, Picture1中的图像按要求保持色 彩、纵横比例不变后复制到 Picture2,同时“复制”按钮不能 用,“结束”按钮可用;单击“结 束”退出程序。http:/ 台州学院计算机系台州学院计算机系14才华是血汗的结晶。 才华 是刀刃,辛苦是磨刀石。 岁月无痕,文字有声 v 依据以上分析,可得程序代码如下: v Private Sub Command1_Click() v Dim i As Integer, j As Integer, x As Integer, y As

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号