Bagaimana sih cara membuat piramida 3 dimensi? Langsung saja ya kita bahas. Sebuah piramida terdiri dari : 1 alas, 4 sisi, dan 5 sudut. Berikut langkah-langkahnya : 1. B uat fungsi rgb() untuk memudahkan konversi format dari warna rgb ke format warna PyOpenGL . # Fungsi konversi rgb def rgb(n): return n / 255.0 2. Buat fungsi pivot() untuk tampilan garis pivot x,y,z untuk mempermudah dalam membuat bentuk 3D. # Fungsi Pivot def pivot(): glBegin(GL_LINES) glColor3f(1,0,0) #merah x glVertex3f(10,0,0) glVertex3f(-10,0,0) glColor3f(0,1,0) #hijau y glVertex3f(0,10,0) glVertex3f(0,-10,0) glColor3f(0,0,1) #biru x glVertex3f(0,0,10) glVertex3f(0,-0,-10) glEnd() 3. B uat fungsi piramida() untuk membuat bentuk piramida 3D. # Bentuk Piramida 3D def piramida(): # Depan glBegin(GL_LINE_STRIP) glColor3f(rgb(231),rgb(1),rgb(10)) glVertex3f(-1.0, -1.0, 1.0) glVertex3f(1.0, -1.0, 1.0) glV...
Hai teman-teman, saya akan memberikan contoh lain untuk event handling pada keyboard . Kali ini dengan objek roket yang saya buat dengan sangat sederhana. Langsung saja menuju source code dan hasilnya. Source Code lengkap : from OpenGLContext import testingcontext from OpenGL.GL import * from OpenGL.GLU import * from OpenGL.GLUT import * # Koordinat x dan y untuk posisi roket pos_x = 0 pos_y = 0 # Teks Warna Objek warna_objek = "Hitam" # Teks Warna Background warna_background = "Hitam" def init(): glClearColor(0.0, 0.0, 0.0, 1.0) gluOrtho2D(-500.0, 500.0, -500.0, 500.0) def drawBitmapText(string,x,y,z) : glRasterPos3f(x,y,z) for c in string : glutBitmapCharacter(GLUT_BITMAP_TIMES_ROMAN_24,ord(c)) def reshape(w, h): glViewport(0,0,w,h) glMatrixMode(GL_PROJECTION) glLoadIdentity() gluOrtho2D(0,w,h,0) glMatrixMode(GL_MODELVIEW) glLoadIdentity() def drawText(): glColor3f(1.0,1.0,0.0) drawBitmapText(...