Sabtu, 09 Juni 2012

OpenGL 3D Roket Cinta Menusuk Hatimu ala YULIANA...........:)

Diposting oleh Unknown di 00.54 0 komentar


=============================SRICP FORM =======================
==============================================================

Sub Inisialisasi_Awal()
'========== Inisialisasi ==========
EnableOpenGL Me.hDC

hrc = wglCreateContext(hDC)
wglMakeCurrent hDC, hrc

'Inisilisasi Koordinat Bidang Dimensi-2
xmin = -20: ymin = -20
xmax = 20: ymax = 20
zmin = 20: zmax = -20
glOrtho xmin, xmax, ymin, ymax, zmin, zmax

glClearColor 2.5, 0.5, 2.5, 0
glClear GL_COLOR_BUFFER_BIT Or GL_DEPTH_BUFFER_BIT

glClear clrColorBufferBit
glMatrixMode GL_PROJECTION
glLoadIdentity
End Sub

Sub Bersihkan_Layar()
glClearColor 0.6, 0.6, 0.6, 0
glClear GL_COLOR_BUFFER_BIT Or GL_DEPTH_BUFFER_BIT
End Sub

Sub Tampilkan_Gambar()
'Menampilkan Hasil
glFlush
SwapBuffers Me.hDC
End Sub

'=====Sisi Depan ====='
'======================='

Sub Membuat_Titik()
'titik 1 bagian depan
With Objek.Sisi_Depan(1)
.x = 0
.y = 0
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Depan(2)
.x = 5
.y = 0
.z = 0
End With

'titik 3 bagian depan
With Objek.Sisi_Depan(3)
.x = 5
.y = 5
.z = 0
End With
'titik 4 bagian depan
With Objek.Sisi_Depan(4)
.x = 0
.y = 5
.z = 0
End With

'======================================'
'=====Sisi Kanan ======'
'======================================'


'titik 1 bagian Kanan
With Objek.Sisi_Kanan(1)
.x = 5
.y = 0
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Kanan(2)
.x = 5
.y = 0
.z = 5
End With

'titik 3 bagian depan
With Objek.Sisi_Kanan(3)
.x = 5
.y = 5
.z = 5
End With
'titik 4 bagian depan
With Objek.Sisi_Kanan(4)
.x = 5
.y = 5
.z = 0
End With


'======================================'
'=====Sisi Kiri ======'
'======================================'


'titik 1 bagian depan
With Objek.Sisi_Kiri(1)
.x = 0
.y = 0
.z = 5
End With

'titik 2 bagian depan
With Objek.Sisi_Kiri(2)
.x = 0
.y = 0
.z = 0
End With

'titik 3 bagian depan
With Objek.Sisi_Kiri(3)
.x = 0
.y = 5
.z = 0
End With
'titik 4 bagian depan
With Objek.Sisi_Kiri(4)
.x = 0
.y = 5
.z = 5
End With

'======================================'
'=====Sisi Belakang ======'
'======================================'


'titik 1 bagian depan
With Objek.Sisi_Belakang(1)
.x = 5
.y = 0
.z = 5
End With

'titik 2 bagian depan
With Objek.Sisi_Belakang(2)
.x = 0
.y = 0
.z = 5
End With

'titik 3 bagian depan
With Objek.Sisi_Belakang(3)
.x = 0
.y = 5
.z = 5
End With
'titik 4 bagian depan
With Objek.Sisi_Belakang(4)
.x = 5
.y = 5
.z = 5
End With


'======================================'
'=====Sisi Atas ======'
'======================================'


'titik 1 bagian depan
With Objek.Sisi_Atas(1)
.x = 0
.y = 5
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Atas(2)
.x = 5
.y = 5
.z = 0
End With

'titik 3 bagian depan
With Objek.Sisi_Atas(3)
.x = 5
.y = 5
.z = 5
End With
'titik 4 bagian depan
With Objek.Sisi_Atas(4)
.x = 0
.y = 5
.z = 5
End With




'======================================'
'=====Sisi Bawah ======'
'======================================'


'titik 1 bagian depan
With Objek.Sisi_Bawah(1)
.x = 0
.y = 0
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Bawah(2)
.x = 5
.y = 0
.z = 0
End With

'titik 3 bagian depan
With Objek.Sisi_Bawah(3)
.x = 5
.y = 0
.z = 5
End With
'titik 4 bagian depan
With Objek.Sisi_Bawah(4)
.x = 0
.y = 0
.z = 5
End With




'=========================================================='
'================PRISMA ATAS================================='
'==========================================================='

'===================pRISMA depan ==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_Depan(1)
.x = 0
.y = 5
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_Depan(2)
.x = 5
.y = 5
.z = 0
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_Depan(3)
.x = 2.5
.y = 10
.z = 2.5
End With

'===================pRISMA kanan ==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_Kanan(1)
.x = 5
.y = 5
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_Kanan(2)
.x = 5
.y = 5
.z = 5
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_Kanan(3)
.x = 2.5
.y = 10
.z = 2.5
End With

'===================pRISMA kiri ==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_Kiri(1)
.x = 0
.y = 5
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_Kiri(2)
.x = 0
.y = 5
.z = 5
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_Kiri(3)
.x = 2.5
.y = 10
.z = 2.5
End With

'===================pRISMA BELAKANG==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_Belakang(1)
.x = 0
.y = 5
.z = 5
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_Belakang(2)
.x = 5
.y = 5
.z = 5
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_Belakang(3)
.x = 2.5
.y = 10
.z = 2.5
End With



'====================================='
'===========PRISMA BAWAH ====================='
'======================================'

'===================pRISMA bawah kanan==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_Bawah_kanan(1)
.x = 0
.y = 0
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_Bawah_kanan(2)
.x = 0
.y = 0
.z = 5
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_Bawah_kanan(3)
.x = 2.5
.y = -10
.z = 2.5
End With

'==================pRISMA bawah depan ==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_Bawah_Depan(1)
.x = 0
.y = 0
.z = 5
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_Bawah_Depan(2)
.x = 5
.y = 0
.z = 5
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_Bawah_Depan(3)
.x = 2.5
.y = -10
.z = 2.5
End With

'===================pRISMA bawah belakang==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_bawah_Belakang(1)
.x = 0
.y = 0
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_bawah_Belakang(2)
.x = 5
.y = 0
.z = 0
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_bawah_Belakang(3)
.x = 2.5
.y = -10
.z = 2.5
End With

'===================pRISMA bawah kiri==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_bawah_kiri(1)
.x = 5
.y = 0
.z = 5
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_bawah_kiri(2)
.x = 5
.y = 0
.z = 0
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_bawah_kiri(3)
.x = 2.5
.y = -10
.z = 2.5
End With



End Sub

Private Sub Command1_Click()
Call Membuat_Titik
Call Inisialisasi_Awal


glRotatef -45, 0, 1, 1

'================kiri============================'


glColor3f 1, 1, 0.4
glBegin bmPolygon
For ttk = 1 To 4
With Objek.Sisi_Kiri(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd




'===============atas============================'


glColor3f 1, 1, 1
glBegin bmPolygon
For ttk = 1 To 4
With Objek.Sisi_Atas(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd





'===============bawah============================'


glColor3f 1, 0, 1
glBegin bmPolygon
For ttk = 1 To 4
With Objek.Sisi_Bawah(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd





'==============depan========================='
glColor3f 1, 0, 0.5
glBegin bmPolygon
For ttk = 1 To 4
With Objek.Sisi_Depan(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd

'================kanan============================'


glColor3f 1, 0, 2.5
glBegin bmPolygon
For ttk = 1 To 4
With Objek.Sisi_Kanan(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd



'================belakang============================'


glColor3f 1, 0.2, 0.4
glBegin bmPolygon
For ttk = 1 To 4
With Objek.Sisi_Belakang(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd



'==========================================================='
'============PRISMA ATAS============================'
'====================================================='

'============Sisi_Primas_Kiri=========================='
glColor3f 0.5, 0, 0.5
glBegin bmTriangles


For ttk = 1 To 3
With Objek.Sisi_Primas_Kiri(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd

'============Primas dEPAN========================='
glColor3f 0.5, 0, 2.5
glBegin bmTriangles



For ttk = 1 To 3
With Objek.Sisi_Primas_Depan(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd

'============Primas kanan=========================='
glColor3f 0.5, 0, 2.5
glBegin bmTriangles


For ttk = 1 To 3
With Objek.Sisi_Primas_Kanan(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd

'===========Sisi_Primas_Belakang=========================='
glColor3f 0.5, 0, 0.5
glBegin bmTriangles


For ttk = 1 To 3
With Objek.Sisi_Primas_Belakang(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd




'========================================='
'=============PRISMA BAWAH================='
'============================================='

'===========Sisi_Primas_ bawah _ belakang========================='
glColor3f 1, 0.2, 0.4
glBegin bmTriangles


For ttk = 1 To 3
With Objek.Sisi_Primas_bawah_Belakang(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd




'===========Sisi_Primas_ bawah _ kanan=========================='
glColor3f 1, 0.2, 0.4
glBegin bmTriangles


For ttk = 1 To 3
With Objek.Sisi_Primas_Bawah_kanan(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd

'===========Sisi_Primas_ bawah _ kiri=========================='
glColor3f 0.5, 0, 2.5
glBegin bmTriangles


For ttk = 1 To 3
With Objek.Sisi_Primas_bawah_kiri(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd



'===========Sisi_Primas_ bawah _ depan=========================='
glColor3f 0.5, 0, 0.5
glBegin bmTriangles


For ttk = 1 To 3
With Objek.Sisi_Primas_Bawah_Depan(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd


Call Tampilkan_Gambar

End Sub



=====================SCRIP MODUL ===============================
===============================================================


'VARIABEL Buatan
Public Type Titik3D
x As Single
y As Single
z As Single
End Type

Public Type Sisi
Sisi_Depan(1 To 4) As Titik3D
Sisi_Kanan(1 To 4) As Titik3D
Sisi_Belakang(1 To 4) As Titik3D
Sisi_Kiri(1 To 4) As Titik3D
Sisi_Atas(1 To 4) As Titik3D
Sisi_Bawah(1 To 4) As Titik3D
Sisi_Primas_Depan(1 To 4) As Titik3D
Sisi_Primas_Kanan(1 To 3) As Titik3D
Sisi_Primas_Kiri(1 To 3) As Titik3D
Sisi_Primas_Belakang(1 To 3) As Titik3D
Sisi_Primas_Bawah_Depan(1 To 3) As Titik3D
Sisi_Primas_bawah_Belakang(1 To 3) As Titik3D
Sisi_Primas_bawah_kiri(1 To 3) As Titik3D
Sisi_Primas_Bawah_kanan(1 To 3) As Titik3D
End Type


Public Objek As Sisi


Sub EnableOpenGL(ghDC As Long)
Dim pfd As PIXELFORMATDESCRIPTOR

ZeroMemory pfd, Len(pfd)
pfd.nSize = Len(pfd)
pfd.nVersion = 1
pfd.dwFlags = PFD_DRAW_TO_WINDOW Or PFD_SUPPORT_OPENGL Or PFD_DOUBLEBUFFER
pfd.iPixelType = PFD_TYPE_RGBA
pfd.cColorBits = 24
pfd.cDepthBits = 32
pfd.iLayerType = PFD_MAIN_PLANE

PixFormat = ChoosePixelFormat(ghDC, pfd)
If PixFormat = 0 Then GoTo ee
SetPixelFormat ghDC, PixFormat, pfd
hrc = wglCreateContext(ghDC)
wglMakeCurrent ghDC, hrc

Exit Sub
ee: MsgBox "Nelze nastavit parametry pro zobrazení grafiky!"
End
End Sub

Sub DisableOpenGL()
wglMakeCurrent 0, 0
wglDeleteContext hrc
End Sub

Kalkulator BLUE ala YULIANA .....

Diposting oleh Unknown di 00.41 0 komentar



Dim angka, Hasil As Double
Dim Operator As String
Private Sub Command1_Click()
If Text1.Text = "0" Then
Text1.Text = "1"
Else
Text1.Text = Text1.Text & "1"
End If
End Sub


Private Sub Command10_Click()
If angka = 0 Then
angka = Val(Text1.Text)
Else
angka = angka + Val(Text1.Text)

End If
Operator = "+"
Text1.Text = 0
End Sub

Private Sub Command11_Click()
If angka = 0 Then
angka = Val(Text1.Text)
Else
angka = angka - Val(Text1.Text)

End If
Operator = "-"
Text1.Text = 0
End Sub

Private Sub Command12_Click()
If angka = 0 Then
angka = Val(Text1.Text)
Else
angka = angka * Val(Text1.Text)

End If
Operator = "*"
Text1.Text = 0
End Sub

Private Sub Command13_Click()
If angka = 0 Then
angka = Val(Text1.Text)
Else
angka = angka / Val(Text1.Text)

End If
Operator = "/"
Text1.Text = 0
End Sub

Private Sub Command14_Click()
If angka = 0 Then
angka = Val(Text1.Text)
Else
angka = angka ^ Val(Text1.Text)

End If
Operator = "^"
Text1.Text = 0
End Sub

Private Sub Command15_Click()
End
End Sub

Private Sub Command16_Click()
If Text1.Text = "0" Then
Text1.Text = "0"
Else
Text1.Text = Text1.Text & "0"
End If
End Sub

Private Sub Command17_Click()
If Operator = "+" Then
Hasil = angka + Val(Text1.Text)
Text1.Text = Hasil
ElseIf Operator = "-" Then
Hasil = angka - Val(Text1.Text)
Text1.Text = Hasil
ElseIf Operator = "*" Then
Hasil = angka * Val(Text1.Text)
Text1.Text = Hasil
ElseIf Operator = "/" Then
Hasil = angka / Val(Text1.Text)
Text1.Text = Hasil
ElseIf Operator = "^" Then
Hasil = angka ^ Val(Text1.Text)
Text1.Text = Hasil
End If
End Sub

Private Sub Command2_Click()
If Text1.Text = "0" Then
Text1.Text = "2"
Else
Text1.Text = Text1.Text & "2"
End If
End Sub

Private Sub Command3_Click()
If Text1.Text = "0" Then
Text1.Text = "3"
Else
Text1.Text = Text1.Text & "3"
End If
End Sub

Private Sub Command4_Click()
If Text1.Text = "0" Then
Text1.Text = "4"
Else
Text1.Text = Text1.Text & "4"
End If
End Sub

Private Sub Command5_Click()
If Text1.Text = "0" Then
Text1.Text = "5"
Else
Text1.Text = Text1.Text & "5"
End If
End Sub

Private Sub Command6_Click()
If Text1.Text = "0" Then
Text1.Text = "6"
Else
Text1.Text = Text1.Text & "6"
End If
End Sub

Private Sub Command7_Click()
If Text1.Text = "0" Then
Text1.Text = "7"
Else
Text1.Text = Text1.Text & "7"
End If
End Sub

Private Sub Command8_Click()
If Text1.Text = "0" Then
Text1.Text = "8"
Else
Text1.Text = Text1.Text & "8"
End If
End Sub

Private Sub Command9_Click()
If Text1.Text = "0" Then
Text1.Text = "9"
Else
Text1.Text = Text1.Text & "9"
End If
End Sub


Private Sub Form_Load()
Form1.BackColor = vbBlue
End Sub

OpenGL BOneka 2D aLaaaa Yuliana.......:)

Diposting oleh Unknown di 00.41 0 komentar

====================SCRIP FORM====================

Sub INISIALISASI()
'========== Inisialisasi ==========
EnableOpenGL Me.hDC

hrc = wglCreateContext(hDC)
wglMakeCurrent hDC, hrc

'Inisilisasi Koordinat D2
xmin = -30: ymin = -30
xmax = 30: ymax = 30
gluOrtho2D xmin, xmax, ymin, ymax

glClearColor 0, 0, 0, 0
glClear GL_COLOR_BUFFER_BIT Or GL_DEPTH_BUFFER_BIT
glClear clrColorBufferBit
glMatrixMode GL_PROJECTION
glLoadIdentity

'=============================================
' ========Menggambar boneka tengah ========
'========Menggambar Garis=============
'=============================================

glColor3f 0, 0, 0
glBegin bmLines
'Titik ke 1
glVertex2f -30, 0
'Titik k2 2
glVertex2f 30, 0
glEnd

glColor3f 0, 0, 0
glBegin bmLines
'Titik ke 1
glVertex2f 0, 30
'Titik ke 2
glVertex2f 0, -30
glEnd

'=====Menggambar badan ==========

glColor3f 0.5, 0, 0.5
glBegin bmPolygon
glVertex2f -2, 0
glVertex2f 2, 0
glVertex2f 4, -8
glVertex2f -4, -8

glEnd

'=====Menggambar kaki 1==========
glColor3f 1, 0.2, 0.4
glBegin bmQuads
glVertex2f 1, -8
glVertex2f 3, -8
glVertex2f 3, -12
glVertex2f 1, -12

glEnd

'=====Menggambar kaki2 ==========
glColor3f 1, 0.2, 0.4
glBegin bmQuads
glVertex2f -3, -8
glVertex2f -1, -8
glVertex2f -1, -12
glVertex2f -3, -12
glEnd




'=====Menggambar tangan 1 ==========
glColor3f 1, 0.2, 0.4
glBegin bmQuads
glVertex2f 2, -1
glVertex2f 6, 2
glVertex2f 6, -3
glVertex2f 3, -4

glEnd

'=====Menggambar tangan 2 ==========
glColor3f 1, 0.2, 0.4
glBegin bmQuads
glVertex2f -2, -1
glVertex2f -6, 2
glVertex2f -6, -3
glVertex2f -3, -4

glEnd


End Sub


Private Sub Command1_Click()
Call INISIALISASI

End Sub

Private Sub Command2_Click()
Dim x As Single, y As GLfloat
Dim rad2Derajad As Single, R As Single
rad2Derajad = 3.14 / 180
R = 4
glBegin bmPolygon
glColor3f 1, 0, 1
For teta = 1 To 360
x = R * Cos(teta * rad2Derajad)
y = R * Sin(teta * rad2Derajad)

glVertex2f x, y + 4

Next
glEnd

'========Menggambar Telinga =======
glBegin bmPolygon
glColor3f 1, 0.2, 0.4
For teta = 1 To 360
x = 2 * Cos(teta * rad2Derajad)
y = 2 * Sin(teta * rad2Derajad)

glVertex2f x + 4, y + 8

Next
glEnd

'========Menggambar Telinga2 =======
glBegin bmPolygon
glColor3f 1, 0.2, 0.4
For teta = 1 To 360
x = 2 * Cos(teta * rad2Derajad)
y = 2 * Sin(teta * rad2Derajad)

glVertex2f x + -4, y + 8

Next
glEnd

'========Menggambar mata =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + -2, y + 4

Next
glEnd

'========Menggambar mata 2 =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + 2, y + 4

Next
glEnd

'======Menggambar segitiga mulut =========
glColor3f 0.5, 0, 0.5
glBegin bmTriangles
'Titik ke 1
glVertex2f -1, 2
'Titik ke 2
glVertex2f 0, 3
'Titik ke 3
glVertex2f 1, 2
glEnd

'========Menggambar bola TANGAN =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 2 * Cos(teta * rad2Derajad)
y = 3 * Sin(teta * rad2Derajad)

glVertex2f x + 6, y + -1

Next
glEnd

'========Menggambar bola TANGAN =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 2 * Cos(teta * rad2Derajad)
y = 3 * Sin(teta * rad2Derajad)

glVertex2f x + -6, y + -1

Next
glEnd



'=======================================
'=====BONEKA KOTAK BARU KANAN =========
'=====Menggambar Garis Kotak kepala=======
'====================================

glColor3f 1, 0.2, 0.4
glBegin bmQuads
'Titik ke 1
glVertex2f 12, 0
'Titik ke 2
glVertex2f 12, 8
'Titik ke 3
glVertex2f 20, 8
'Titik ke 4
glVertex2f 20, 0
glEnd

'=====Menggambar Garis Kotak telinga kiri=======
glColor3f 1, 1, 1
glBegin bmQuads
'Titik ke 1
glVertex2f 11, 0
'Titik ke 2
glVertex2f 11, 8
'Titik ke 3
glVertex2f 12, 8
'Titik ke 4
glVertex2f 12, 0
glEnd

'=====Menggambar Garis Kotak telinga kanan=======
glColor3f 1, 1, 1
glBegin bmQuads
'Titik ke 1
glVertex2f 20, 0
'Titik ke 2
glVertex2f 20, 8
'Titik ke 3
glVertex2f 21, 8
'Titik ke 4
glVertex2f 21, 0
glEnd

'=====Menggambar Garis Kotak badan=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f 13, -6
'Titik ke 2
glVertex2f 13, 0
'Titik ke 3
glVertex2f 19, 0
'Titik ke 4
glVertex2f 19, -6
glEnd

'=====Menggambar Garis Kotak kaki=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f 14, -10
'Titik ke 2
glVertex2f 14, -6
'Titik ke 3
glVertex2f 15, -6
'Titik ke 4
glVertex2f 15, -10
glEnd

'=====Menggambar Garis Kotak kaki=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f 17, -10
'Titik ke 2
glVertex2f 17, -6
'Titik ke 3
glVertex2f 18, -6
'Titik ke 4
glVertex2f 18, -10
glEnd

'======Menggambar segitiga kepala topi=========
glColor3f 0, 0.2, 1
glBegin bmTriangles
'Titik ke 1
glVertex2f 12, 8
'Titik ke 2
glVertex2f 16, 13
'Titik ke 3
glVertex2f 20, 8
glEnd

'========Menggambar kotak mata kanan =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + 14, y + 6

Next
glEnd

'========Menggambar kotak mata kiri =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + 18, y + 6

Next
glEnd

'======Menggambar kotak segitiga mulut =========
glColor3f 0, 1, 1
glBegin bmTriangles
'Titik ke 1
glVertex2f 15, 3
'Titik ke 2
glVertex2f 16, 4
'Titik ke 3
glVertex2f 17, 3
glEnd

'=====Menggambar kotak tangan 1==========
glColor3f 1, 1, 0
glBegin bmQuads
glVertex2f 20, -5
glVertex2f 20, 0
glVertex2f 21, 0
glVertex2f 21, -5

glEnd
'=====Menggambar kotak tangan 2==========
glColor3f 1, 1, 0
glBegin bmQuads
glVertex2f 11, -5
glVertex2f 11, 0
glVertex2f 12, 0
glVertex2f 12, -5

glEnd

'========Menggambar kotak mata kanan =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + 16, y + 13

Next
glEnd

'============================================
'====BONEKA KOTAK BARU KIRI =============
'=====Menggambar Garis Kotak kepala=======
'=========================================
glColor3f 1, 0.2, 0.4
glBegin bmQuads
'Titik ke 1
glVertex2f -12, 0
'Titik ke 2
glVertex2f -12, 8
'Titik ke 3
glVertex2f -20, 8
'Titik ke 4
glVertex2f -20, 0
glEnd

'=====Menggambar Garis Kotak telinga kiri=======
glColor3f 1, 1, 1
glBegin bmQuads
'Titik ke 1
glVertex2f -11, 0
'Titik ke 2
glVertex2f -11, 8
'Titik ke 3
glVertex2f -12, 8
'Titik ke 4
glVertex2f -12, 0
glEnd

'=====Menggambar Garis Kotak telinga kanan=======
glColor3f 1, 1, 1
glBegin bmQuads
'Titik ke 1
glVertex2f -20, 0
'Titik ke 2
glVertex2f -20, 8
'Titik ke 3
glVertex2f -21, 8
'Titik ke 4
glVertex2f -21, 0
glEnd

'=====Menggambar Garis Kotak badan=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f -13, -6
'Titik ke 2
glVertex2f -13, 0
'Titik ke 3
glVertex2f -19, 0
'Titik ke 4
glVertex2f -19, -6
glEnd

'=====Menggambar Garis Kotak kaki=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f -14, -10
'Titik ke 2
glVertex2f -14, -6
'Titik ke 3
glVertex2f -15, -6
'Titik ke 4
glVertex2f -15, -10
glEnd

'=====Menggambar Garis Kotak kaki=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f -17, -10
'Titik ke 2
glVertex2f -17, -6
'Titik ke 3
glVertex2f -18, -6
'Titik ke 4
glVertex2f -18, -10
glEnd
'======Menggambar segitiga kepala topi=========
glColor3f 0, 0.2, 1
glBegin bmTriangles
'Titik ke 1
glVertex2f -12, 8
'Titik ke 2
glVertex2f -16, 13
'Titik ke 3
glVertex2f -20, 8
glEnd

'========Menggambar kotak mata kanan =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + -14, y + 6

Next
glEnd

'========Menggambar kotak mata kiri =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + -18, y + 6

Next
glEnd

'======Menggambar kotak segitiga mulut =========
glColor3f 0, 1, 1
glBegin bmTriangles
'Titik ke 1
glVertex2f -15, 3
'Titik ke 2
glVertex2f -16, 4
'Titik ke 3
glVertex2f -17, 3
glEnd

'=====Menggambar kotak tangan 1==========
glColor3f 1, 1, 0
glBegin bmQuads
glVertex2f -20, -5
glVertex2f -20, 0
glVertex2f -21, 0
glVertex2f -21, -5

glEnd
'=====Menggambar kotak tangan 2==========
glColor3f 1, 1, 0
glBegin bmQuads
glVertex2f -11, -5
glVertex2f -11, 0
glVertex2f -12, 0
glVertex2f -12, -5

glEnd

'========Menggambar kotak mata kanan =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + -16, y + 13

Next
glEnd
glFlush
SwapBuffers Me.hDC

End Sub



==========================SCRIP MODUL====================

Sub EnableOpenGL(ghDC As Long)
Dim pfd As PIXELFORMATDESCRIPTOR

ZeroMemory pfd, Len(pfd)
pfd.nSize = Len(pfd)
pfd.nVersion = 1
pfd.dwFlags = PFD_DRAW_TO_WINDOW Or PFD_SUPPORT_OPENGL Or PFD_DOUBLEBUFFER
pfd.iPixelType = PFD_TYPE_RGBA
pfd.cColorBits = 24
pfd.cDepthBits = 32
pfd.iLayerType = PFD_MAIN_PLANE

PixFormat = ChoosePixelFormat(ghDC, pfd)
If PixFormat = 0 Then GoTo ee
SetPixelFormat ghDC, PixFormat, pfd
hrc = wglCreateContext(ghDC)
wglMakeCurrent ghDC, hrc

Exit Sub
ee: MsgBox "Nelze nastavit parametry pro zobrazení grafiky!"
End
End Sub

Sub DisableOpenGL()
wglMakeCurrent 0, 0
wglDeleteContext hrc
End Sub

Sabtu, 09 Juni 2012

OpenGL 3D Roket Cinta Menusuk Hatimu ala YULIANA...........:)



=============================SRICP FORM =======================
==============================================================

Sub Inisialisasi_Awal()
'========== Inisialisasi ==========
EnableOpenGL Me.hDC

hrc = wglCreateContext(hDC)
wglMakeCurrent hDC, hrc

'Inisilisasi Koordinat Bidang Dimensi-2
xmin = -20: ymin = -20
xmax = 20: ymax = 20
zmin = 20: zmax = -20
glOrtho xmin, xmax, ymin, ymax, zmin, zmax

glClearColor 2.5, 0.5, 2.5, 0
glClear GL_COLOR_BUFFER_BIT Or GL_DEPTH_BUFFER_BIT

glClear clrColorBufferBit
glMatrixMode GL_PROJECTION
glLoadIdentity
End Sub

Sub Bersihkan_Layar()
glClearColor 0.6, 0.6, 0.6, 0
glClear GL_COLOR_BUFFER_BIT Or GL_DEPTH_BUFFER_BIT
End Sub

Sub Tampilkan_Gambar()
'Menampilkan Hasil
glFlush
SwapBuffers Me.hDC
End Sub

'=====Sisi Depan ====='
'======================='

Sub Membuat_Titik()
'titik 1 bagian depan
With Objek.Sisi_Depan(1)
.x = 0
.y = 0
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Depan(2)
.x = 5
.y = 0
.z = 0
End With

'titik 3 bagian depan
With Objek.Sisi_Depan(3)
.x = 5
.y = 5
.z = 0
End With
'titik 4 bagian depan
With Objek.Sisi_Depan(4)
.x = 0
.y = 5
.z = 0
End With

'======================================'
'=====Sisi Kanan ======'
'======================================'


'titik 1 bagian Kanan
With Objek.Sisi_Kanan(1)
.x = 5
.y = 0
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Kanan(2)
.x = 5
.y = 0
.z = 5
End With

'titik 3 bagian depan
With Objek.Sisi_Kanan(3)
.x = 5
.y = 5
.z = 5
End With
'titik 4 bagian depan
With Objek.Sisi_Kanan(4)
.x = 5
.y = 5
.z = 0
End With


'======================================'
'=====Sisi Kiri ======'
'======================================'


'titik 1 bagian depan
With Objek.Sisi_Kiri(1)
.x = 0
.y = 0
.z = 5
End With

'titik 2 bagian depan
With Objek.Sisi_Kiri(2)
.x = 0
.y = 0
.z = 0
End With

'titik 3 bagian depan
With Objek.Sisi_Kiri(3)
.x = 0
.y = 5
.z = 0
End With
'titik 4 bagian depan
With Objek.Sisi_Kiri(4)
.x = 0
.y = 5
.z = 5
End With

'======================================'
'=====Sisi Belakang ======'
'======================================'


'titik 1 bagian depan
With Objek.Sisi_Belakang(1)
.x = 5
.y = 0
.z = 5
End With

'titik 2 bagian depan
With Objek.Sisi_Belakang(2)
.x = 0
.y = 0
.z = 5
End With

'titik 3 bagian depan
With Objek.Sisi_Belakang(3)
.x = 0
.y = 5
.z = 5
End With
'titik 4 bagian depan
With Objek.Sisi_Belakang(4)
.x = 5
.y = 5
.z = 5
End With


'======================================'
'=====Sisi Atas ======'
'======================================'


'titik 1 bagian depan
With Objek.Sisi_Atas(1)
.x = 0
.y = 5
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Atas(2)
.x = 5
.y = 5
.z = 0
End With

'titik 3 bagian depan
With Objek.Sisi_Atas(3)
.x = 5
.y = 5
.z = 5
End With
'titik 4 bagian depan
With Objek.Sisi_Atas(4)
.x = 0
.y = 5
.z = 5
End With




'======================================'
'=====Sisi Bawah ======'
'======================================'


'titik 1 bagian depan
With Objek.Sisi_Bawah(1)
.x = 0
.y = 0
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Bawah(2)
.x = 5
.y = 0
.z = 0
End With

'titik 3 bagian depan
With Objek.Sisi_Bawah(3)
.x = 5
.y = 0
.z = 5
End With
'titik 4 bagian depan
With Objek.Sisi_Bawah(4)
.x = 0
.y = 0
.z = 5
End With




'=========================================================='
'================PRISMA ATAS================================='
'==========================================================='

'===================pRISMA depan ==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_Depan(1)
.x = 0
.y = 5
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_Depan(2)
.x = 5
.y = 5
.z = 0
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_Depan(3)
.x = 2.5
.y = 10
.z = 2.5
End With

'===================pRISMA kanan ==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_Kanan(1)
.x = 5
.y = 5
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_Kanan(2)
.x = 5
.y = 5
.z = 5
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_Kanan(3)
.x = 2.5
.y = 10
.z = 2.5
End With

'===================pRISMA kiri ==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_Kiri(1)
.x = 0
.y = 5
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_Kiri(2)
.x = 0
.y = 5
.z = 5
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_Kiri(3)
.x = 2.5
.y = 10
.z = 2.5
End With

'===================pRISMA BELAKANG==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_Belakang(1)
.x = 0
.y = 5
.z = 5
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_Belakang(2)
.x = 5
.y = 5
.z = 5
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_Belakang(3)
.x = 2.5
.y = 10
.z = 2.5
End With



'====================================='
'===========PRISMA BAWAH ====================='
'======================================'

'===================pRISMA bawah kanan==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_Bawah_kanan(1)
.x = 0
.y = 0
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_Bawah_kanan(2)
.x = 0
.y = 0
.z = 5
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_Bawah_kanan(3)
.x = 2.5
.y = -10
.z = 2.5
End With

'==================pRISMA bawah depan ==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_Bawah_Depan(1)
.x = 0
.y = 0
.z = 5
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_Bawah_Depan(2)
.x = 5
.y = 0
.z = 5
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_Bawah_Depan(3)
.x = 2.5
.y = -10
.z = 2.5
End With

'===================pRISMA bawah belakang==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_bawah_Belakang(1)
.x = 0
.y = 0
.z = 0
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_bawah_Belakang(2)
.x = 5
.y = 0
.z = 0
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_bawah_Belakang(3)
.x = 2.5
.y = -10
.z = 2.5
End With

'===================pRISMA bawah kiri==============='

'titik 1 bagian depan
With Objek.Sisi_Primas_bawah_kiri(1)
.x = 5
.y = 0
.z = 5
End With

'titik 2 bagian depan
With Objek.Sisi_Primas_bawah_kiri(2)
.x = 5
.y = 0
.z = 0
End With

'titik 3 bagian depan
With Objek.Sisi_Primas_bawah_kiri(3)
.x = 2.5
.y = -10
.z = 2.5
End With



End Sub

Private Sub Command1_Click()
Call Membuat_Titik
Call Inisialisasi_Awal


glRotatef -45, 0, 1, 1

'================kiri============================'


glColor3f 1, 1, 0.4
glBegin bmPolygon
For ttk = 1 To 4
With Objek.Sisi_Kiri(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd




'===============atas============================'


glColor3f 1, 1, 1
glBegin bmPolygon
For ttk = 1 To 4
With Objek.Sisi_Atas(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd





'===============bawah============================'


glColor3f 1, 0, 1
glBegin bmPolygon
For ttk = 1 To 4
With Objek.Sisi_Bawah(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd





'==============depan========================='
glColor3f 1, 0, 0.5
glBegin bmPolygon
For ttk = 1 To 4
With Objek.Sisi_Depan(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd

'================kanan============================'


glColor3f 1, 0, 2.5
glBegin bmPolygon
For ttk = 1 To 4
With Objek.Sisi_Kanan(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd



'================belakang============================'


glColor3f 1, 0.2, 0.4
glBegin bmPolygon
For ttk = 1 To 4
With Objek.Sisi_Belakang(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd



'==========================================================='
'============PRISMA ATAS============================'
'====================================================='

'============Sisi_Primas_Kiri=========================='
glColor3f 0.5, 0, 0.5
glBegin bmTriangles


For ttk = 1 To 3
With Objek.Sisi_Primas_Kiri(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd

'============Primas dEPAN========================='
glColor3f 0.5, 0, 2.5
glBegin bmTriangles



For ttk = 1 To 3
With Objek.Sisi_Primas_Depan(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd

'============Primas kanan=========================='
glColor3f 0.5, 0, 2.5
glBegin bmTriangles


For ttk = 1 To 3
With Objek.Sisi_Primas_Kanan(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd

'===========Sisi_Primas_Belakang=========================='
glColor3f 0.5, 0, 0.5
glBegin bmTriangles


For ttk = 1 To 3
With Objek.Sisi_Primas_Belakang(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd




'========================================='
'=============PRISMA BAWAH================='
'============================================='

'===========Sisi_Primas_ bawah _ belakang========================='
glColor3f 1, 0.2, 0.4
glBegin bmTriangles


For ttk = 1 To 3
With Objek.Sisi_Primas_bawah_Belakang(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd




'===========Sisi_Primas_ bawah _ kanan=========================='
glColor3f 1, 0.2, 0.4
glBegin bmTriangles


For ttk = 1 To 3
With Objek.Sisi_Primas_Bawah_kanan(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd

'===========Sisi_Primas_ bawah _ kiri=========================='
glColor3f 0.5, 0, 2.5
glBegin bmTriangles


For ttk = 1 To 3
With Objek.Sisi_Primas_bawah_kiri(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd



'===========Sisi_Primas_ bawah _ depan=========================='
glColor3f 0.5, 0, 0.5
glBegin bmTriangles


For ttk = 1 To 3
With Objek.Sisi_Primas_Bawah_Depan(ttk)
glVertex3f .x, .y, .z
End With
Next ttk
glEnd


Call Tampilkan_Gambar

End Sub



=====================SCRIP MODUL ===============================
===============================================================


'VARIABEL Buatan
Public Type Titik3D
x As Single
y As Single
z As Single
End Type

Public Type Sisi
Sisi_Depan(1 To 4) As Titik3D
Sisi_Kanan(1 To 4) As Titik3D
Sisi_Belakang(1 To 4) As Titik3D
Sisi_Kiri(1 To 4) As Titik3D
Sisi_Atas(1 To 4) As Titik3D
Sisi_Bawah(1 To 4) As Titik3D
Sisi_Primas_Depan(1 To 4) As Titik3D
Sisi_Primas_Kanan(1 To 3) As Titik3D
Sisi_Primas_Kiri(1 To 3) As Titik3D
Sisi_Primas_Belakang(1 To 3) As Titik3D
Sisi_Primas_Bawah_Depan(1 To 3) As Titik3D
Sisi_Primas_bawah_Belakang(1 To 3) As Titik3D
Sisi_Primas_bawah_kiri(1 To 3) As Titik3D
Sisi_Primas_Bawah_kanan(1 To 3) As Titik3D
End Type


Public Objek As Sisi


Sub EnableOpenGL(ghDC As Long)
Dim pfd As PIXELFORMATDESCRIPTOR

ZeroMemory pfd, Len(pfd)
pfd.nSize = Len(pfd)
pfd.nVersion = 1
pfd.dwFlags = PFD_DRAW_TO_WINDOW Or PFD_SUPPORT_OPENGL Or PFD_DOUBLEBUFFER
pfd.iPixelType = PFD_TYPE_RGBA
pfd.cColorBits = 24
pfd.cDepthBits = 32
pfd.iLayerType = PFD_MAIN_PLANE

PixFormat = ChoosePixelFormat(ghDC, pfd)
If PixFormat = 0 Then GoTo ee
SetPixelFormat ghDC, PixFormat, pfd
hrc = wglCreateContext(ghDC)
wglMakeCurrent ghDC, hrc

Exit Sub
ee: MsgBox "Nelze nastavit parametry pro zobrazení grafiky!"
End
End Sub

Sub DisableOpenGL()
wglMakeCurrent 0, 0
wglDeleteContext hrc
End Sub

Kalkulator BLUE ala YULIANA .....




Dim angka, Hasil As Double
Dim Operator As String
Private Sub Command1_Click()
If Text1.Text = "0" Then
Text1.Text = "1"
Else
Text1.Text = Text1.Text & "1"
End If
End Sub


Private Sub Command10_Click()
If angka = 0 Then
angka = Val(Text1.Text)
Else
angka = angka + Val(Text1.Text)

End If
Operator = "+"
Text1.Text = 0
End Sub

Private Sub Command11_Click()
If angka = 0 Then
angka = Val(Text1.Text)
Else
angka = angka - Val(Text1.Text)

End If
Operator = "-"
Text1.Text = 0
End Sub

Private Sub Command12_Click()
If angka = 0 Then
angka = Val(Text1.Text)
Else
angka = angka * Val(Text1.Text)

End If
Operator = "*"
Text1.Text = 0
End Sub

Private Sub Command13_Click()
If angka = 0 Then
angka = Val(Text1.Text)
Else
angka = angka / Val(Text1.Text)

End If
Operator = "/"
Text1.Text = 0
End Sub

Private Sub Command14_Click()
If angka = 0 Then
angka = Val(Text1.Text)
Else
angka = angka ^ Val(Text1.Text)

End If
Operator = "^"
Text1.Text = 0
End Sub

Private Sub Command15_Click()
End
End Sub

Private Sub Command16_Click()
If Text1.Text = "0" Then
Text1.Text = "0"
Else
Text1.Text = Text1.Text & "0"
End If
End Sub

Private Sub Command17_Click()
If Operator = "+" Then
Hasil = angka + Val(Text1.Text)
Text1.Text = Hasil
ElseIf Operator = "-" Then
Hasil = angka - Val(Text1.Text)
Text1.Text = Hasil
ElseIf Operator = "*" Then
Hasil = angka * Val(Text1.Text)
Text1.Text = Hasil
ElseIf Operator = "/" Then
Hasil = angka / Val(Text1.Text)
Text1.Text = Hasil
ElseIf Operator = "^" Then
Hasil = angka ^ Val(Text1.Text)
Text1.Text = Hasil
End If
End Sub

Private Sub Command2_Click()
If Text1.Text = "0" Then
Text1.Text = "2"
Else
Text1.Text = Text1.Text & "2"
End If
End Sub

Private Sub Command3_Click()
If Text1.Text = "0" Then
Text1.Text = "3"
Else
Text1.Text = Text1.Text & "3"
End If
End Sub

Private Sub Command4_Click()
If Text1.Text = "0" Then
Text1.Text = "4"
Else
Text1.Text = Text1.Text & "4"
End If
End Sub

Private Sub Command5_Click()
If Text1.Text = "0" Then
Text1.Text = "5"
Else
Text1.Text = Text1.Text & "5"
End If
End Sub

Private Sub Command6_Click()
If Text1.Text = "0" Then
Text1.Text = "6"
Else
Text1.Text = Text1.Text & "6"
End If
End Sub

Private Sub Command7_Click()
If Text1.Text = "0" Then
Text1.Text = "7"
Else
Text1.Text = Text1.Text & "7"
End If
End Sub

Private Sub Command8_Click()
If Text1.Text = "0" Then
Text1.Text = "8"
Else
Text1.Text = Text1.Text & "8"
End If
End Sub

Private Sub Command9_Click()
If Text1.Text = "0" Then
Text1.Text = "9"
Else
Text1.Text = Text1.Text & "9"
End If
End Sub


Private Sub Form_Load()
Form1.BackColor = vbBlue
End Sub

OpenGL BOneka 2D aLaaaa Yuliana.......:)


====================SCRIP FORM====================

Sub INISIALISASI()
'========== Inisialisasi ==========
EnableOpenGL Me.hDC

hrc = wglCreateContext(hDC)
wglMakeCurrent hDC, hrc

'Inisilisasi Koordinat D2
xmin = -30: ymin = -30
xmax = 30: ymax = 30
gluOrtho2D xmin, xmax, ymin, ymax

glClearColor 0, 0, 0, 0
glClear GL_COLOR_BUFFER_BIT Or GL_DEPTH_BUFFER_BIT
glClear clrColorBufferBit
glMatrixMode GL_PROJECTION
glLoadIdentity

'=============================================
' ========Menggambar boneka tengah ========
'========Menggambar Garis=============
'=============================================

glColor3f 0, 0, 0
glBegin bmLines
'Titik ke 1
glVertex2f -30, 0
'Titik k2 2
glVertex2f 30, 0
glEnd

glColor3f 0, 0, 0
glBegin bmLines
'Titik ke 1
glVertex2f 0, 30
'Titik ke 2
glVertex2f 0, -30
glEnd

'=====Menggambar badan ==========

glColor3f 0.5, 0, 0.5
glBegin bmPolygon
glVertex2f -2, 0
glVertex2f 2, 0
glVertex2f 4, -8
glVertex2f -4, -8

glEnd

'=====Menggambar kaki 1==========
glColor3f 1, 0.2, 0.4
glBegin bmQuads
glVertex2f 1, -8
glVertex2f 3, -8
glVertex2f 3, -12
glVertex2f 1, -12

glEnd

'=====Menggambar kaki2 ==========
glColor3f 1, 0.2, 0.4
glBegin bmQuads
glVertex2f -3, -8
glVertex2f -1, -8
glVertex2f -1, -12
glVertex2f -3, -12
glEnd




'=====Menggambar tangan 1 ==========
glColor3f 1, 0.2, 0.4
glBegin bmQuads
glVertex2f 2, -1
glVertex2f 6, 2
glVertex2f 6, -3
glVertex2f 3, -4

glEnd

'=====Menggambar tangan 2 ==========
glColor3f 1, 0.2, 0.4
glBegin bmQuads
glVertex2f -2, -1
glVertex2f -6, 2
glVertex2f -6, -3
glVertex2f -3, -4

glEnd


End Sub


Private Sub Command1_Click()
Call INISIALISASI

End Sub

Private Sub Command2_Click()
Dim x As Single, y As GLfloat
Dim rad2Derajad As Single, R As Single
rad2Derajad = 3.14 / 180
R = 4
glBegin bmPolygon
glColor3f 1, 0, 1
For teta = 1 To 360
x = R * Cos(teta * rad2Derajad)
y = R * Sin(teta * rad2Derajad)

glVertex2f x, y + 4

Next
glEnd

'========Menggambar Telinga =======
glBegin bmPolygon
glColor3f 1, 0.2, 0.4
For teta = 1 To 360
x = 2 * Cos(teta * rad2Derajad)
y = 2 * Sin(teta * rad2Derajad)

glVertex2f x + 4, y + 8

Next
glEnd

'========Menggambar Telinga2 =======
glBegin bmPolygon
glColor3f 1, 0.2, 0.4
For teta = 1 To 360
x = 2 * Cos(teta * rad2Derajad)
y = 2 * Sin(teta * rad2Derajad)

glVertex2f x + -4, y + 8

Next
glEnd

'========Menggambar mata =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + -2, y + 4

Next
glEnd

'========Menggambar mata 2 =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + 2, y + 4

Next
glEnd

'======Menggambar segitiga mulut =========
glColor3f 0.5, 0, 0.5
glBegin bmTriangles
'Titik ke 1
glVertex2f -1, 2
'Titik ke 2
glVertex2f 0, 3
'Titik ke 3
glVertex2f 1, 2
glEnd

'========Menggambar bola TANGAN =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 2 * Cos(teta * rad2Derajad)
y = 3 * Sin(teta * rad2Derajad)

glVertex2f x + 6, y + -1

Next
glEnd

'========Menggambar bola TANGAN =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 2 * Cos(teta * rad2Derajad)
y = 3 * Sin(teta * rad2Derajad)

glVertex2f x + -6, y + -1

Next
glEnd



'=======================================
'=====BONEKA KOTAK BARU KANAN =========
'=====Menggambar Garis Kotak kepala=======
'====================================

glColor3f 1, 0.2, 0.4
glBegin bmQuads
'Titik ke 1
glVertex2f 12, 0
'Titik ke 2
glVertex2f 12, 8
'Titik ke 3
glVertex2f 20, 8
'Titik ke 4
glVertex2f 20, 0
glEnd

'=====Menggambar Garis Kotak telinga kiri=======
glColor3f 1, 1, 1
glBegin bmQuads
'Titik ke 1
glVertex2f 11, 0
'Titik ke 2
glVertex2f 11, 8
'Titik ke 3
glVertex2f 12, 8
'Titik ke 4
glVertex2f 12, 0
glEnd

'=====Menggambar Garis Kotak telinga kanan=======
glColor3f 1, 1, 1
glBegin bmQuads
'Titik ke 1
glVertex2f 20, 0
'Titik ke 2
glVertex2f 20, 8
'Titik ke 3
glVertex2f 21, 8
'Titik ke 4
glVertex2f 21, 0
glEnd

'=====Menggambar Garis Kotak badan=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f 13, -6
'Titik ke 2
glVertex2f 13, 0
'Titik ke 3
glVertex2f 19, 0
'Titik ke 4
glVertex2f 19, -6
glEnd

'=====Menggambar Garis Kotak kaki=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f 14, -10
'Titik ke 2
glVertex2f 14, -6
'Titik ke 3
glVertex2f 15, -6
'Titik ke 4
glVertex2f 15, -10
glEnd

'=====Menggambar Garis Kotak kaki=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f 17, -10
'Titik ke 2
glVertex2f 17, -6
'Titik ke 3
glVertex2f 18, -6
'Titik ke 4
glVertex2f 18, -10
glEnd

'======Menggambar segitiga kepala topi=========
glColor3f 0, 0.2, 1
glBegin bmTriangles
'Titik ke 1
glVertex2f 12, 8
'Titik ke 2
glVertex2f 16, 13
'Titik ke 3
glVertex2f 20, 8
glEnd

'========Menggambar kotak mata kanan =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + 14, y + 6

Next
glEnd

'========Menggambar kotak mata kiri =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + 18, y + 6

Next
glEnd

'======Menggambar kotak segitiga mulut =========
glColor3f 0, 1, 1
glBegin bmTriangles
'Titik ke 1
glVertex2f 15, 3
'Titik ke 2
glVertex2f 16, 4
'Titik ke 3
glVertex2f 17, 3
glEnd

'=====Menggambar kotak tangan 1==========
glColor3f 1, 1, 0
glBegin bmQuads
glVertex2f 20, -5
glVertex2f 20, 0
glVertex2f 21, 0
glVertex2f 21, -5

glEnd
'=====Menggambar kotak tangan 2==========
glColor3f 1, 1, 0
glBegin bmQuads
glVertex2f 11, -5
glVertex2f 11, 0
glVertex2f 12, 0
glVertex2f 12, -5

glEnd

'========Menggambar kotak mata kanan =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + 16, y + 13

Next
glEnd

'============================================
'====BONEKA KOTAK BARU KIRI =============
'=====Menggambar Garis Kotak kepala=======
'=========================================
glColor3f 1, 0.2, 0.4
glBegin bmQuads
'Titik ke 1
glVertex2f -12, 0
'Titik ke 2
glVertex2f -12, 8
'Titik ke 3
glVertex2f -20, 8
'Titik ke 4
glVertex2f -20, 0
glEnd

'=====Menggambar Garis Kotak telinga kiri=======
glColor3f 1, 1, 1
glBegin bmQuads
'Titik ke 1
glVertex2f -11, 0
'Titik ke 2
glVertex2f -11, 8
'Titik ke 3
glVertex2f -12, 8
'Titik ke 4
glVertex2f -12, 0
glEnd

'=====Menggambar Garis Kotak telinga kanan=======
glColor3f 1, 1, 1
glBegin bmQuads
'Titik ke 1
glVertex2f -20, 0
'Titik ke 2
glVertex2f -20, 8
'Titik ke 3
glVertex2f -21, 8
'Titik ke 4
glVertex2f -21, 0
glEnd

'=====Menggambar Garis Kotak badan=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f -13, -6
'Titik ke 2
glVertex2f -13, 0
'Titik ke 3
glVertex2f -19, 0
'Titik ke 4
glVertex2f -19, -6
glEnd

'=====Menggambar Garis Kotak kaki=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f -14, -10
'Titik ke 2
glVertex2f -14, -6
'Titik ke 3
glVertex2f -15, -6
'Titik ke 4
glVertex2f -15, -10
glEnd

'=====Menggambar Garis Kotak kaki=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f -17, -10
'Titik ke 2
glVertex2f -17, -6
'Titik ke 3
glVertex2f -18, -6
'Titik ke 4
glVertex2f -18, -10
glEnd
'======Menggambar segitiga kepala topi=========
glColor3f 0, 0.2, 1
glBegin bmTriangles
'Titik ke 1
glVertex2f -12, 8
'Titik ke 2
glVertex2f -16, 13
'Titik ke 3
glVertex2f -20, 8
glEnd

'========Menggambar kotak mata kanan =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + -14, y + 6

Next
glEnd

'========Menggambar kotak mata kiri =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + -18, y + 6

Next
glEnd

'======Menggambar kotak segitiga mulut =========
glColor3f 0, 1, 1
glBegin bmTriangles
'Titik ke 1
glVertex2f -15, 3
'Titik ke 2
glVertex2f -16, 4
'Titik ke 3
glVertex2f -17, 3
glEnd

'=====Menggambar kotak tangan 1==========
glColor3f 1, 1, 0
glBegin bmQuads
glVertex2f -20, -5
glVertex2f -20, 0
glVertex2f -21, 0
glVertex2f -21, -5

glEnd
'=====Menggambar kotak tangan 2==========
glColor3f 1, 1, 0
glBegin bmQuads
glVertex2f -11, -5
glVertex2f -11, 0
glVertex2f -12, 0
glVertex2f -12, -5

glEnd

'========Menggambar kotak mata kanan =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)

glVertex2f x + -16, y + 13

Next
glEnd
glFlush
SwapBuffers Me.hDC

End Sub



==========================SCRIP MODUL====================

Sub EnableOpenGL(ghDC As Long)
Dim pfd As PIXELFORMATDESCRIPTOR

ZeroMemory pfd, Len(pfd)
pfd.nSize = Len(pfd)
pfd.nVersion = 1
pfd.dwFlags = PFD_DRAW_TO_WINDOW Or PFD_SUPPORT_OPENGL Or PFD_DOUBLEBUFFER
pfd.iPixelType = PFD_TYPE_RGBA
pfd.cColorBits = 24
pfd.cDepthBits = 32
pfd.iLayerType = PFD_MAIN_PLANE

PixFormat = ChoosePixelFormat(ghDC, pfd)
If PixFormat = 0 Then GoTo ee
SetPixelFormat ghDC, PixFormat, pfd
hrc = wglCreateContext(ghDC)
wglMakeCurrent ghDC, hrc

Exit Sub
ee: MsgBox "Nelze nastavit parametry pro zobrazení grafiky!"
End
End Sub

Sub DisableOpenGL()
wglMakeCurrent 0, 0
wglDeleteContext hrc
End Sub
 

Yuliana Bagi - Bagi Ilmu ^_^ Copyright © 2009 Paper Girl is Designed by Ipietoon Sponsored by Online Business Journal