Transcript Slide 1
12. VISUAL BASIC İLE ANİMASYON Öteleme Hareketi Hareket eden kütle Dim ndelay As Integer Sub delay() For k1 = 1 To ndelay * 50000 xx = Exp(-1.5) Next k1 End Sub Private Sub Command1_Click() Dim x0 As Integer Dim xi As Single ndelay = 5 xmax = 100: ymax = 100 Form1.Scale (0, ymax)-(xmax, 0) xi = xmax / 100 For x0 = 0 To xmax Step xi Form1.Line (x0 + 5, 50)-(x0 + 10, 55), , BF Call delay Form1.Refresh Next x0 End Sub Dönme Hareketi O Dönen kütle Private Sub Command2_Click() Dim t, teta, dteta, pi, x2, y2 As Single r2 = 1 r0 = 30 ndelay = 5 pi = 3.141592 ny = 73 dteta = 2 * pi / (ny - 1) xmin = -50: ymin = -50 xmax = 50: ymax = 50 Form1.Scale (xmin, ymax)-(xmax, ymin) c0 = QBColor(2) Form1.FillColor = c0 Form1.FillStyle = 0 Form1.DrawWidth = 5 For teta = 0 To 2 * pi Step dteta Form1.Cls x2 = r0 * Cos(teta) y2 = r0 * Sin(teta) Form1.Circle (0, 0), r2 / 4 Form1.Line (0, 0)-(x2, y2) Form1.Circle (x2, y2), r2, c0 Call delay Next teta End Sub Krank-Biyel Mekanizmasının Hareketi R L 2 XB R = 30 L = 90 XB = L - R ^ 2 / (4 * L) + R * (Cos(2) + R / (4 * L) * Cos(2 * 2)) Private Sub Command1_Click() R = 30: L = 90: K = 0 ny = 73 tetai = (2 * pi) / (ny - 1) Picture1.Scale (-R, R)-(2 * R + L, -R) Do For teta2 = 0 To 2 * pi Step tetai XA = R * Cos(teta2) YA = R * Sin(teta2) Picture1.Line (0, 0)-(XA, YA), RGB(255, 0, 0) Picture1.Circle (0, 0), R / 10, RGB(255, 0, 0) Picture1.Circle (XA, YA), R / 10, RGB(255, 0, 0) XB = L - R ^ 2 / (4 * L) + R * (Cos(teta2) + R / (4 * L) * Cos(2 * teta2)) Picture1.Circle (XB, 0), R / 10, RGB(255, 0, 0) Picture1.Line (XA, YA)-(XB, 0), RGB(255, 0, 0) Picture1.Line (XB - R / 2, R / 2)-(XB + R, -R / 2), RGB(0, 0, 255), B ndelay = 2: nc = 1000000: For i = 1 To nc * ndelay: Next i Picture1.Refresh DoEvents If k = 1 Then Picture1.Line (0, 0)-(XA, YA), RGB(255, 0, 0) Picture1.Circle (0, 0), R / 10, RGB(255, 0, 0) Picture1.Circle (XA, YA), R / 10, RGB(255, 0, 0) Picture1.Circle (XB, 0), R / 10, RGB(255, 0, 0) Picture1.Line (XA, YA)-(XB, 0), RGB(255, 0, 0) Picture1.Line (XB - R / 2, R / 2)-(XB + R, -R / 2), RGB(0, 0, 255), B Exit Do End If Next teta2 Loop End Sub Dim k As Integer Const pi = 3.141592 Dim nc As Long, ndelay As Integer Private Sub Form_Load() Picture1.DrawWidth = 9 Picture1.FillStyle = 7 Picture1.FillColor = RGB(0, 255, 0) End Sub Private Sub Command2_Click() K=1 End Sub General Declerations