第10章处理图形多媒体课件

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
容器是绘制图形或控件的场所
容器中的对象只能在容器内变动。 窗体、框架、图片框是容器 移动容器时,内部对象与容器的相对位置保持不变。
第10章处理图形多媒体课件
VB容器的图层从前到后为:
前层——非绘图控件所在层,如命令按钮、复选框等; 中间层——绘图控件和标签所在层; 底层——绘图方法显示结果的地方。 图层显示特性依靠:AutoRedraw和ClipControls属性的设置及绘图
• 左上角坐标总是:(ScaleLeft,ScaleTop) • 右下角坐标总是:
(ScaleLeft+ScaleWidth,ScaleTop +ScaleHeight)。
第10章处理图形多媒体课件
•10.4 使用绘图 方法
10.4.1 画点—PSet方法 ·绘图方法可画点、画线、画矩形、画椭圆等。 ·格式:[对象名.]PSet (x,y) [,颜色]
[容器名.]Scale [(x1,y1)-(x2,y2)]
1.容器名指窗体名或图片框控件名。 缺省指当前窗体
2.(x1, y1)和(x2, y2) 为新坐标系统左上角和右下角坐标 3.省略(x1,y1)-(x2,y2),恢复缺省刻度。
第10章处理图形多媒体课件
· 例10-1中Picture1.Scale (-150, -5)-(150, 195)更改图片框坐标系如上图。 这样求运动点(x,y)的位置比较方便
If D = -1 And A = 20 Or D = 1 And A = -20 Then D = -D '±20°
改方向
End Sub
·Scale方法使图片框左上角和右下角坐标分别为(-150,-5)和(150,195)。
·而170表示着绳索的长度,可以取其它值,但应使整个单摆可见。
第10章处理图形多媒体课件
第10章处理图形多媒体课件
• ·属性说明: • ScaleWidth、ScaleHeight不同于Width、 Height • ScaleMode属性可以取值0~7,表示刻度分别 为自定义、缇、磅、像素、字符、英寸、毫 米和厘米。
• 更改ScaleWidth、ScaleHeight、ScaleLeft、ScaleTop之 • 一时,VB自动将ScaleMode的值设为0。 • 如Scale (-150, -5)-(150, 195),也可以表示成: • ScaleWidth=300:ScalHeight=200: ScaleLeft=-
第10章处理图形多媒体课件
Private Sub Command1_Click() '擦“黑板”Cls
·坐标系是用于确定数与基本几何对象之间对应关 系的参考系,是形和数结合的基础。
·VB坐标系是确定对象和图形位置的参考系。 ·VB中每一个容器采用(x,y)的二维坐标系统 ·每个对象、图形操作,都要使用坐标系。 ·VB坐标系统使用有以下规则:
移动或调整控件大小时,使用容器的坐标系统。 绘图方法和Print方法,使用容器的坐标系统。
End Sub
第10章处理图形多媒体课件
2.画矩形采用格式:
[对象名.]Line [(x1,y1)]-(x2,y2) ,[颜色],B[F] (x1,y1)和(x2,y2) 为矩形的两个对角顶点坐标 缺省(x1,y1),表示当前输出位置作(x2,y2)的对角顶点 参数B表示绘制矩形 参数F表示矩形填充,即为实心的矩形 如:Line (500, 200)-Step(200, 200), vbRed, B 如: Line (500, 200)-Step(200, 200), vbRed, BF 若颜色缺省,逗号也不能省
第10章处理图形多媒体课件
10.4.2 画直线和矩形——Line的方法 ·使用Line方法可以画出直线或矩形。 1.画线格式:[对象名.]Line [(x1,y1)]-(x2,y2)
[,颜色]
(x1,y1)和(x2,y2)分别为起点和终点坐标 如:Line (100, 150)-(1400, 1300), vbRed
1.(x,y)为所画点的坐标位置 2.颜色指点的颜色。缺省时由容器的ForeColor属性决定。 例如:PSet (1000, 1000), RGB(255, 0, 0)
在(1000,1000)处画红点,大小由容器的DrawWidth属性 决定。
3.擦除一个点,可采用以背景色重画点。 4. Cls方法可擦除绘图方法及Print方法的输出内容。
Step(50, 50)
VB画直线时,包括了起点,未包括终点。画终 点可用:
PSet Step(0, 0)[, color]
连续使用缺省起点的Line方法,可以绘制多点 折线。
第10章处理图形多媒体课件
【例10-3】在窗体上中间画出一个等腰三角形。 可根据窗体ScaleWidth和ScaleHeight属性确定 三点位置 由于一条线的终点等价于另一条线的起点,因 此除了第一条线以外,其它两条线均可用缺省 起点的Line方法。
第10章处理图形多媒体课件
【例10-2】绘制一条y=x2的抛物线。
Private Sub Form_Click() Dim x As Single Scale (-10, 105)-(10, -2) For x = -9 To 9 Step 0.01 PSet (x, x * x) Next x
End Sub
第10章处理图形多媒体 课件
2020/11/25
第10章处理图形多媒体课件
本章主要介绍 绘图属性 绘图方法 图片框 影像框
第10章处理图形多媒体课件
•10.1 概述
图形一般指图绘形象,描画出物体的轮廓、形状 等。
由图元组成,图元可以是点、线、圆、字符、填充区等。 每个图元有它的数据定义和外貌特征。如线段端点、粗细等。 VB提供了一些控件和方法,绘制图元,最终构成图形
方法是否在Paint事件过程内。
图像一般是指绘制、摄制或印制的形象。
可将它们装载到图片框、影像框可窗体上
第10章处理图形多媒体课件
•10.2 模拟 单摆
【例10-1】设计一个模拟单摆 ·控件:
图片框控件Picture1:作单摆容器 直线控件Line1:作绳索 形状控件Shape1:作球(设计界面中为矩形) 定时器控件Timer1:控制摆动。
设绳索长为170,则当绳索与y轴的夹角为a时, 则x=170sina,y=170cosa。
第10章处理图形多媒体课件
• 10.3.3 坐标属性 • ·使用坐标属性可以更改容器的坐标刻度,也可
以自定义坐标系。
• ScaleMode:设置坐标刻度,缺省值为1(缇) • ScaleLeft:表示或设置对象左边界水平坐标 • ScaleTop:表示或设置对象上边界垂直坐标 • ScaleWidth:表示或设置对象内水平度量单位数 • ScaleHeight:表示或设置对象内垂直度量单位数 • CurrentX:当前输出的水平坐标。程序中使用。 • CurrentY:当前输出的垂直坐标。程序中使用。
'顶端画一条固定绳索的横线
Timer1.Interval = 100
A = -20: D = -1
'设置初始角度和方向
End Sub
第10章处理图形多媒体课件
Private Sub Timer1_Timer()
Dim X As Single, Y As Single
If D = -1 Then A = A + 2 Else A = A - 2
'更改坐标系统
Shape1.FillStyle = 0
'使形状控件的填充模式为"实心
"
Shape1.FillColor = vbRed
'使形状控件填充红色
Shape1.BorderColor = vbRed
'使形状控件的边界颜色为红色
wk.baidu.com
Shape1.Width = 15
'按坐标系,更改形状控件大小
Shape1.Shape = 3
第10章处理图形多媒体课件
【例10-4】编制简易黑板。功能是:用鼠标左键在 窗体上拖动时,画出线条;用鼠标右键在窗体上拖 动时,擦去线条。击“清除” 擦去所有痕迹。
·事件:
窗体MouseDown:画出按下鼠标的第一点 窗体MouseMove:画出线条或删除线条
用背景色,画小矩形擦
“清除”的Click:擦去所有痕迹
'使形状控件的形状为圆形
Line1.BorderColor = vbRed
'使绳索颜色为红色
Line1.X1 = 0: Line1.Y1 = 0
'使绳索上端在原点(0,0)上
Picture1.AutoRedraw = True
'使图片框的重绘属性为True
Picture1.Line (-10, 0)-(10, 0)
•10.3 什么是VB坐标 系
第10章处理图形多媒体课件
10.3.1 VB默认坐标系 ·VB坐标系每个点用(x,y)表示
x是水平方向沿x轴的位置,默认最左端是0 y是垂直方向沿y轴的位置,默认最上端是0 ·坐标单位又称为坐标刻度,默认缇(twips)。 还可以使用磅、像素和毫米等。 ·屏幕的左上角的坐标总是(0,0)
150:ScaleTop=-5 • 若要改坐标轴方向,可将ScaleWidth或ScaleHeight设置成
负值
第10章处理图形多媒体课件
• ScaleMode属性取值为1~7时的刻度,称为标 准刻度
• 在设置了ScaleMode属性的值后,VB会重定义 ScaleWidth和ScaleHeight,使它们与新刻度 保持一致。
第10章处理图形多媒体课件
·其它容器在缺省状态下,左上角是(0,0)。
窗体(0,0)点指窗体标题栏下边沿的左上角。 ·使用对象的刻度属性和Scale方法,可重新设置
容器的坐标系统。
第10章处理图形多媒体课件
10.3.2 Scale方法 ·使用Scale方法可以创建自定义刻度。 ·Scale方法的使用格式为:
·缺省起点 (x1,y1),表示将当前输出位置作为 起点。
第10章处理图形多媒体课件
坐标点的另一种表示形式为:Step(x,y)
是相对位置的表示法,表示当前输出位置水平方向加上x, 垂直方向加上y后得到的坐标点。
对象的当前位置由CurrentX和CurrentY决定 Line (100, 200)-(150, 250)等价:Line (100, 200)-
第10章处理图形多媒体课件
Private Sub Command1_Click() Dim x1 As Integer, x2 As Integer, x3 As Integer Dim y1 As Integer, y2 As Integer, y3 As Integer x1 = ScaleWidth / 2: y1 = ScaleHeight / 5 x2 = ScaleWidth / 5: y2 = ScaleHeight / 5 * 4 x3 = ScaleWidth / 5 * 4: y3 = ScaleHeight / 5 * 4 Line (x1, y1)-(x2, y2) Line -(x3, y3) Line -(x1, y1)
Const PI = 3.1415926
Private Sub Form_Load()
Form1.Width = 1.3 * Form1.Height
'设置窗体的宽度和高度比例
Picture1.Width = 1.5 * Picture1.Height '设置图片框的宽度和高度比例
Picture1.Scale (-150, -5)-(150, 195)
第10章处理图形多媒体课件
·2个模块级变量A和D,表示摆动角度和方向。 ·2个事件过程:
Form_Load,初始化界面和控件属性 Timer1_Timer,控制单摆的运动。
第10章处理图形多媒体课件

Option Explicit
Dim A As Integer, D As Integer '模块级变量,A表示角度,D表示方向
X = 170 * Sin(A * PI / 180)
'确定圆心和直线下
端的位置
Y = 170 * Cos(A * PI / 180)
Line1.X2 = X: Line1.Y2 = Y
'更改直线下端位置
Shape1.Left = X - Shape1.Width / 2
'使圆心位置在直线的下端
Shape1.Top = Y - Shape1.Height / 2
相关文档
最新文档