Laman

Monday, October 22, 2012

Pemrograman Grafis


Pemrograman Grafis



Gambar dalam pemrograman grafis merupakan hal penting untuk dipelajari dalam Visual Basic, karena bisa menambah kemampuan dalam mendesain visual effect bagi program-program yang dibuat.

unit kontrol yang digunakan untuk pemrograman grafis meliputi :


·         Line, digunakan untuk garis lurus di atad form
·         Shape, digunakan untuk membuat lingkaran, persegi empat, elips atau persegi panjang bersiku bulat

·         Image, untuk menampilkan gambar pada form
·         Picture Box, digunakan untuk menampilkan gambar di form. Namun kontrol ini paling baik jika digunakan untuk dipindahkan atau dibuat animasi.

Dasar Pemrograman Grafis

A.   Sistem Koordinat
Hampir semua operasi pemrograman grafis bekerja dengan sistem koordinat, seperti berpindah, mengubah ukuran, dan lain-lain. Pada Visual Basic hanya dikenal sistem koordinat dua dimensi, walupun natinya bisa saja dibuat sistem koordinat 3 dimensi dengan tambahan rutin yang dibuat.
Untuk mendefinisikan koordinat pada form atau obyek yang lain digunakan penulisan (x,y). Standar awal dari koordinat adalah (0,0) pada titik paling kiri atas dari obyek yang didefinisikan koordinatnya.


B.   Warna
Untuk mendefinisikan warna pada Visual Basic bisa digunakan :


·         Fungsi RGB
·         Fungsi QBColor untuk memilih satu dari 16 warna pada Microsoft Quick Basic

·         Salah satu konstanta intrinsic yang bisa dilihat pada Object Browser
·         Langsung mengisikan nilai warna, misalkan “&H00FFFFF&”


Untuk menggunakan fungsi RGB digunakan standar penulisan rutin RGB(merah, hijau, biru). Fungsi ini akan menghasilkan warna sebagai kombinasi dari nilai-nilai yang diisikan pada merah, hijau dan biru. Nilai yang bisa dilakukan adalah dari 0 hingga 255.
Contoh :
Text1.BackColor = RGB(0,0,0) ‘ warna latar belakang hitan

Pset (100,100), RGB(255,255,0) ‘titik pada koordinat (100,100) latar warna kunig Text1.BackColor = QBColor(2) ‘latar belakang berwarna hijau



Kontrol untuk Pemrograman Grafis

A.   Kontrol Line

Kontrol ini digunakan untuk menggambar garis lurus yang menghubungkan antara dua titik pada form, saat berada dalam mode desain.








B.   Kontrol Shape

Kontrol ini menyediakan beberapa bentuk geometri yang bisa dibuat. Visual    Basic juga     memberikan berbagai cara pengisian bentuk-bentuk geometri   tersebut
.











C.   Kontrol Image

Fungsi utamna dari kontrol ini adalah menampilkan gambar. Namun demikian kontrol ini memiliki sebuah properti uni bernama Stretch. Jika properti ini bernilai True maka fungsinya adalah menarik gambar menjadi besar sesuai dengan kontrol ini.





D.   Kontrol PictureBox

Kontro ini fungsinya mirip dengan kontrol image, Kelebihannya adalah kemampuan untuk menerima obyek lain diatasnya, bahkan bisa menulis atau menggambar pada kontrol ini, Bahkan jika kontrol ini dipindahkan, posisi obyek yang ada dalam kontrol ini tetap tak akan berubah. Prinsip ini mirip dengan penggunaan kontrol Frame.






Metoda-Metoda Pemrograman Grafis

Visual Basic menyediakan beberapa metoda yang bisa digunakan dalam permrograman grafis yang meliputi :
·         Cls, mebuat semua grafis terhapus

·         Pset, mengatur warna pada sebuah titik pixel terpilih
[Obyek.]Pset(x,y),[,warna]

·         Point, untuk mengembalikan nilai warna suatu titik
·         Line, untuk mebuat garis, persegi atau mengisi kotak
[Obyek.]Line[(x1,y1)]-(x2-y2)[,warna]


·         Circle, untuk menggambar lingkaran, elips

[Obyek.]Circle[Step] (x,y), radius[, warna]
·         PaintPicture, untuk mengecat grafis pada suatu koordinat terpilih.

Contoh Program 1
Membuat grafik menggunakan listing Visual Basic. Grafik yang akan kita buat       adalah Line Chart, Bar Chart dan Spiral Chart. 
·       Langkah pertama, buatlah sebuah form dengan tampilan seperti pada gambar berikut ini.

·       Langkah berikutnya adalah dengan mengetikkan listing berikut ini pada form diatas.

·       Option Explicit
Dim N As Integer
Dim X(199) As Single
Dim Y(199) As Single
Dim YD(199) As Single
·       Private Sub LineChart(objectname As Control, N As Integer, X() As Single, Y() As Single)
Dim Xmin As Single, Xmax As Single
Dim Ymin As Single, Ymax As Single
Dim I As Integer
Xmin = X(0): Xmax = X(0)
Ymin = Y(0): Ymax = Y(0)
For I = 1 To N – 1
If X(I) Xmax Then Xmax = X(I)
If Y(I) Ymax Then Ymax = Y(I)
Next I
Ymin = (1 – 0.05 * Sgn(Ymin)) * Ymin
Ymax = (1 + 0.05 * Sgn(Ymax)) * Ymax
objectname.Scale (Xmin, Ymax)-(Xmax, Ymin)
objectname.Cls
objectname.PSet (X(0), Y(0))
For I = 1 To N – 1
objectname.Line -(X(I), Y(I))
Next I
End Sub
·       Private Sub Form_Load()
Dim I As Integer
Const PI = 3.14159
N = 200
For I = 1 To N – 1
X(I) = I
Y(I) = Exp(-0.01 * I) * Sin(PI * I / 10)
YD(I) = Exp(-0.01 * I) * (PI * Cos(PI * I / 10) / 10 – 0.01 * Sin(PI * I / 10))
Next I
End Sub
·       Private Sub mnuPlotBar_Click()
Call BarChart(PicPlot, N, X, Y)
End Sub
·       Private Sub mnuPlotExit_Click()
End
End Sub
·       Private Sub mnuPlotLine_Click()
Call LineChart(PicPlot, N, X, Y)
End Sub
·       Private Sub mnuPlotSpiral_Click()
Call LineChart(PicPlot, N, Y, YD)
End Sub
·       Private Sub BarChart(objectname As Control, N As Integer, X() As Single, Y() As Single)
Dim Xmin As Single, Xmax As Single
Dim Ymin As Single, Ymax As Single
Dim I As Integer
Xmin = X(0): Xmax = X(0)
Ymin = Y(0): Ymax = Y(0)
For I = 1 To N – 1
If X(I) Xmax Then Xmax = X(I)
If Y(I) Ymax Then Ymax = Y(I)
Next I
Ymin = (1 – 0.05 * Sgn(Ymin)) * Ymin
Ymax = (1 + 0.05 * Sgn(Ymax)) * Ymax
objectname.Scale (Xmin, Ymax)-(Xmax, Ymin)
objectname.Cls
For I = 1 To N – 1
objectname.Line (X(I), 0)-(X(I), Y(I)), vbBlue
Next I
End Sub
·       Kalau sudah selesai silahkan disimpan dan dijalankan. Bagaimana hasilnya?

Line Chart:


·       Bar Chart:
·      

·       Spiral Chart:

·      

Contoh Program 2

Program di bawah ini untuk menampilkan grafik perolehan nilai bahasa komputer. Input data melalui textbox.


Code program :

Private Sub command1_click()
Form1.Line (600, 5150)-(2650, 5150), QBColor(0)
Form1.Line (600, 5150)-(600, 2500), QBColor(0)
Dim a(1 To 5) As Integer
For i = 1 To 5
a(i) = Val(Text1(i).Text)
Next i
x = 600
For i = 1 To 5
x = x + 300
Form1.FillStyle = 0
Form1.FillColor = QBColor(i)
Form1.Line (x, 5150) -(x, (5150 - a(i) * 50)), QBColor(1), B
Form1.Line (x, 5150)-(x + 150, (5150 - a(i) * 50)),QBColor(1), B
Next i
End Sub


Private Sub Command2_Click()
End
End Sub

Private Sub Form_Activate()
Text1(1).SetFocus
End Sub

No comments:

Post a Comment