You are on page 1of 7

Simulasi lalulintas sederhana

Form Program

Picture
4

Timer1

Timer2
4

Picture
5
5

Coding
Private Sub Timer1_Timer()
Text1.Text = Val(Text1.Text) + 1
If Text1.Text = 1 Then
merah1.FillColor = RGB(0, 0, 0)
kuning1.FillColor = RGB(255, 255,
hijau1.FillColor = RGB(0, 0, 0)
merah3.FillColor = RGB(0, 0, 0)
kuning3.FillColor = RGB(255, 255,
hijau3.FillColor = RGB(0, 0, 0)
merah6.FillColor = RGB(0, 0, 0)
kuning6.FillColor = RGB(255, 255,
hijau6.FillColor = RGB(0, 0, 0)
merah7.FillColor = RGB(0, 0, 0)
kuning7.FillColor = RGB(255, 255,
hijau7.FillColor = RGB(0, 0, 0)
merah2.FillColor = RGB(0, 0, 0)
kuning2.FillColor = RGB(255, 255,

0)

0)

Picture
3

hijau2.FillColor = RGB(0, 0, 0)
merah4.FillColor = RGB(0, 0, 0)
kuning4.FillColor = RGB(255, 255, 0)
hijau4.FillColor = RGB(0, 0, 0)
merah5.FillColor = RGB(0, 0, 0)
kuning5.FillColor = RGB(255, 255, 0)
hijau5.FillColor = RGB(0, 0, 0)
merah8.FillColor = RGB(0, 0, 0)
kuning8.FillColor = RGB(255, 255, 0)
hijau8.FillColor = RGB(0, 0, 0)

0)

0)

0)

ElseIf Text1.Text = 3 Then


merah1.FillColor = RGB(0, 0, 0)
kuning1.FillColor = RGB(0, 0, 0)
hijau1.FillColor = RGB(0, 255, 0)
merah3.FillColor = RGB(0, 0, 0)
kuning3.FillColor = RGB(0, 0, 0)

hijau3.FillColor = RGB(0, 255, 0)


merah6.FillColor = RGB(0, 0, 0)
kuning6.FillColor = RGB(0, 0, 0)
hijau6.FillColor = RGB(0, 255, 0)
merah7.FillColor = RGB(0, 0, 0)
kuning7.FillColor = RGB(0, 0, 0)
hijau7.FillColor = RGB(0, 255, 0)
merah2.FillColor = RGB(255, 0, 0)
kuning2.FillColor = RGB(0, 0, 0)
hijau2.FillColor = RGB(0, 0, 0)
merah4.FillColor = RGB(255, 0, 0)
kuning4.FillColor = RGB(0, 0, 0)
hijau4.FillColor = RGB(0, 0, 0)
merah5.FillColor = RGB(255, 0, 0)
kuning5.FillColor = RGB(0, 0, 0)
hijau5.FillColor = RGB(0, 0, 0)
merah8.FillColor = RGB(255, 0, 0)
kuning8.FillColor = RGB(0, 0, 0)
hijau8.FillColor = RGB(0, 0, 0)
ElseIf Text1.Text = 13 Then
merah1.FillColor = RGB(0, 0, 0)
kuning1.FillColor = RGB(255, 255,
hijau1.FillColor = RGB(0, 0, 0)
merah3.FillColor = RGB(0, 0, 0)
kuning3.FillColor = RGB(255, 255,
hijau3.FillColor = RGB(0, 0, 0)
merah6.FillColor = RGB(0, 0, 0)
kuning6.FillColor = RGB(255, 255,
hijau6.FillColor = RGB(0, 0, 0)
merah7.FillColor = RGB(0, 0, 0)
kuning7.FillColor = RGB(255, 255,
hijau7.FillColor = RGB(0, 0, 0)
merah2.FillColor = RGB(0, 0, 0)
kuning2.FillColor = RGB(255, 255,
hijau2.FillColor = RGB(0, 0, 0)
merah4.FillColor = RGB(0, 0, 0)
kuning4.FillColor = RGB(255, 255,
hijau4.FillColor = RGB(0, 0, 0)
merah5.FillColor = RGB(0, 0, 0)
kuning5.FillColor = RGB(255, 255,
hijau5.FillColor = RGB(0, 0, 0)
merah8.FillColor = RGB(0, 0, 0)
kuning8.FillColor = RGB(255, 255,
hijau8.FillColor = RGB(0, 0, 0)
ElseIf Text1.Text = 16 Then

0)

0)

0)

0)

0)

0)

0)

0)

merah1.FillColor = RGB(255, 0, 0)
kuning1.FillColor = RGB(0, 0, 0)
hijau1.FillColor = RGB(0, 0, 0)
merah3.FillColor = RGB(255, 0, 0)
kuning3.FillColor = RGB(0, 0, 0)
hijau3.FillColor = RGB(0, 0, 0)
merah6.FillColor = RGB(255, 0, 0)
kuning6.FillColor = RGB(0, 0, 0)
hijau6.FillColor = RGB(0, 0, 0)
merah7.FillColor = RGB(255, 0, 0)
kuning7.FillColor = RGB(0, 0, 0)
hijau7.FillColor = RGB(0, 0, 0)
merah2.FillColor = RGB(0, 0, 0)
kuning2.FillColor = RGB(0, 0, 0)
hijau2.FillColor = RGB(0, 255, 0)
merah4.FillColor = RGB(0, 0, 0)
kuning4.FillColor = RGB(0, 0, 0)
hijau4.FillColor = RGB(0, 255, 0)
merah5.FillColor = RGB(0, 0, 0)
kuning5.FillColor = RGB(0, 0, 0)
hijau5.FillColor = RGB(0, 255, 0)
merah8.FillColor = RGB(0, 0, 0)
kuning8.FillColor = RGB(0, 0, 0)
hijau8.FillColor = RGB(0, 255, 0)
ElseIf Text1.Text = 26 Then
merah1.FillColor = RGB(0, 0, 0)
kuning1.FillColor = RGB(255, 255,
hijau1.FillColor = RGB(0, 0, 0)
merah3.FillColor = RGB(0, 0, 0)
kuning3.FillColor = RGB(255, 255,
hijau3.FillColor = RGB(0, 0, 0)
merah6.FillColor = RGB(0, 0, 0)
kuning6.FillColor = RGB(255, 255,
hijau6.FillColor = RGB(0, 0, 0)
merah7.FillColor = RGB(0, 0, 0)
kuning7.FillColor = RGB(255, 255,
hijau7.FillColor = RGB(0, 0, 0)
merah2.FillColor = RGB(0, 0, 0)
kuning2.FillColor = RGB(255, 255,
hijau2.FillColor = RGB(0, 0, 0)
merah4.FillColor = RGB(0, 0, 0)
kuning4.FillColor = RGB(255, 255,
hijau4.FillColor = RGB(0, 0, 0)
merah5.FillColor = RGB(0, 0, 0)
kuning5.FillColor = RGB(255, 255,
hijau5.FillColor = RGB(0, 0, 0)

0)

0)

0)

0)

0)

0)

0)

merah8.FillColor = RGB(0, 0, 0)
kuning8.FillColor = RGB(255, 255, 0)
hijau8.FillColor = RGB(0, 0, 0)
ElseIf Text1.Text = 27 Then
Text1.Text = 1
End If
End Sub
Private Sub Timer2_Timer()
If kuning4.FillColor = RGB(255, 255,
0) Then
Picture5.Left = Picture5.Left + 150
Picture3.Left = Picture3.Left - 150
Picture4.Top = Picture4.Top + 150
If Picture5.Left >= 2400 Then
Picture5.Left = Picture5.Left - 400
Picture5.Top = Picture5.Top - 400
End If
If Picture3.Left <= 2760 Then
Picture3.Left = Picture3.Left - 400
End If
If Picture4.Top >= 2280 Then
Picture4.Top = Picture4.Top + 400
End If
ElseIf hijau4.FillColor = RGB(0, 255,
0) Then
Picture5.Left = Picture5.Left + 400

Picture3.Left = Picture3.Left - 400


If Picture5.Left >= 2400 Then
Picture5.Left = Picture5.Left - 400
Picture5.Top = Picture5.Top - 400
End If
If Picture3.Left <= 2760 Then
Picture3.Left = Picture3.Left - 400
End If
If Picture4.Top >= 2280 Then
Picture4.Top = Picture4.Top + 400
End If
ElseIf hijau1.FillColor = RGB(0, 255,
0) Then
Picture4.Top = Picture4.Top + 400
If Picture5.Left >= 2400 Then
Picture5.Left = Picture5.Left - 400
Picture5.Top = Picture5.Top - 400
End If
If Picture3.Left <= 2760 Then
Picture3.Left = Picture3.Left - 400
End If
If Picture4.Top >= 2280 Then
Picture4.Top = Picture4.Top + 400
End If
End If
End Sub

Hasil Ketika Program Dijalankan

Analisis data :
1. Pertama tama timer1 dan timer2 set interval di 1000. Agar
menghitungnya 1 detik.
2. Timer1 berfungsi untuk perubahan pada lampu lalulintas (shape).
Sedangkan timer2 berfungsi untuk pergerakan kendaraan (picture)

3. Text1 digunakan sebagai bahan acuan untuk perubahan warna pada objek
shape. Cara kerjanya sebagai counter dari timer. Contoh cara kerjanya
lampu1 akan bewarna hijau ketika text1 menunjukan angka 3.
If Text1.Text = 3 Then
merah1.FillColor = RGB(0, 0, 0)
kuning1.FillColor = RGB(0, 0, 0)
hijau1.FillColor = RGB(0, 255, 0)
End if
4. Timer1 bekerja dengan cara menambah text1 dengan 1 agar seperti jam.
Lalu mengubah warna lampu lalulintas atau shape.
Private Sub Timer1_Timer()
Text1.Text = Val(Text1.Text) + 1
If Text1.Text = 1 Then
merah1.FillColor = RGB(0, 0, 0)
.....
End Sub
5. Timer2 bekerja tergantung kondisi dari timer1. Lalu untuk merubah posisi
picture digunakan instruksi
Picture1.left = picture1.left + 100
(left jika bergerak horizontal)
Picture2.top = picture2.top + 100
(top jika bergerak vertikal)
Catatan : tanda +/- digunkan agar bergeser. Lalu perbedaan tanda
tersebut hanya untuk kiri kanan / atas bawah.
Private Sub Timer2_Timer()
If kuning4.FillColor = RGB(255, 255, 0) Then
Picture5.Left = Picture5.Left + 150
If Picture5.Left >= 2400 Then
Picture5.Left = Picture5.Left 400
End if
End Sub

1.
2.

3.
4.
5.

6.

Analisa data: (hafiz)


Gunakan 2 timer untuk mengatur lalulintas dalam program ini ( interval =
1000 )
Timer 1 untuk acuan lampu lalulintas
a. Merah 10 detik
b. Kuning 3 detik
c. Hijau 10 detik
Timer 2 untuk acuan pergerakan kendaraan
Gunakan objek shape sebagai gambar bentuk lampu lalulintas
Pewarnaan menggunakan perintah RGB. Contoh:
shape1.FillColor = RGB(0, 0, 0)
ket:
- RGB(255, 0, 0) untuk warna merah
- RGB(0, 255, 0) untuk warna hijau
- RGB(255, 255, 0) untuk warna kuning
- RGB(0, 0, 0) untuk warna hitam
Cara menggeser data menggunakan perintah
Picture1.left = picture1.left + 100 atau Picture1.left = picture1.left - 100
(left jika bergerak horizontal)
Picture2.top = picture2.top + 100 atau Picture2.top = picture2.top - 100

(top jika bergerak vertikal)


Ket:
- Left di tambah dengan suatu nilai, maka gambar akan bergeser ke
kanan. Sedangkan left kurang dengan suatu nilai, maka gambar
akan bergeser ke kiri.
- Top di tambah dengan suatu nilai, maka gambar akan bergeser ke
bawah. Sedangkan top kurang dengan suatu nilai, maka gambar
akan bergeser ke kiri.

Analisa data: (azhim)


1. Dalam program ini digunakan 2 buah timer, dengan interval timer 1000.
2. Timer1 ditampilkan pada Text1 sebagai acuan perubahan warna pada
lampu lalu-lintas. Sedangkan timer2 digunakan sebagai acuan pergerakan
gambar ( kendaraan ).
3. Pada program ini perubahan warna lampu adalah sebagai berikut :
a. Merah = 10 sec [ RGB ( 255, 0, 0 ) ].
b. Kuning = 3 sec [ RGB ( 255, 255, 0 ) ].
c. Hijau = 10 sec [ RGB ( 0, 255, 0 ) ].
4. Cara mengubah warna lampu yaitu dengan menggunakan perintah
sebagai berikut :
Private Sub Timer1_Timer()
Text1.Text = Val(Text1.Text) + 1
If Text1.Text = 1 Then
merah1.FillColor = RGB(0, 0, 0)
.....
End Sub
5. Cara menggeser gambar yaitu dengan menggunakan perintah sebagai
berikut :
Picture1.left = picture1.left + 100 atau Picture1.left = picture1.left - 100
(left digunakan untuk objek yang bergerak ke kanan atau ke kiri
( horizontal ) ).
Picture2.top = picture2.top + 100 atau Picture2.top = picture2.top - 100
(top digunakan untuk objek yang bergerak ke atas atau ke bawah
( vertikal ) ).
Ket:
- Jika nilai left di tambah (+) dengan suatu konstanta maka objek
akan bergerak ke kanan. Sedangkan jika nilai left dikurang (-)
dengan suatu konstanta maka objek akan bergerak ke kiri.
- Jika nilai top di tambah (+) dengan suatu konstanta maka objek
akan bergerak ke bawah. Sedangkan jika nilai top dikurang (-)
dengan suatu konstanta maka objek akan bergerak ke atas.

Tingkat kehalusan pergerakan objek bergantung pada konstanta


yang di jumlahkan atau di kurangkan. Semakin kecil nilai konstanta
maka pergerakan objek akan terlihat semakin mulus/halus.

You might also like