Skip to main content

Membuat bentuk Matahari dengan PyOpenGL


Software yang digunakan:
  • IDLE Pyhton 3.8.2 (IDLE)
SOURCE CODE :

from OpenGL.GL import *
from OpenGL.GLU import *
from OpenGL.GLUT import *

def init():
    glClearColor(0.0, 0.0, 0.0, 0.0)
    gluOrtho2D(-500.0, 500.0, -500.0, 500.0)

# untuk membuat matahari kita akan gunakan bentuk segitiga yang di rotaasi sebanyak 18 kali dengan jarak sudut tiap rotasi sebanyak 20 derajat.

def plotpoints():
    glColor3f(1.,1.0,0.)
    for i in range(0,19):
        s = 20
        glRotatef(s, 0.0, 0.0,1.0)
        segitiga()       

    glFlush()

# fungsi untuk membuat bentuk segitiga
def segitiga():
    glBegin(GL_TRIANGLES)
    glVertex2f(-50.0,0.0)
    glVertex2f(50.0,0.0)
    glVertex2f(0.0,200.0)
    glEnd()

NOTE: Jika ingin bentuk segitiga bergaris gunakan GL_LINE_LOOP
Jika ingin bentuk segitiga yang ada isinya gunakan GL_TRISNGLES

def main():
    glutInit(sys.argv)
    glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB)
    glutInitWindowSize(500,500)
    glutInitWindowPosition(100,100)
    glutCreateWindow("Matahari")
    glutDisplayFunc(plotpoints)

    init()
    glutMainLoop()
   
main()


Output:
  • Bentuk matahari degan segitiga menggunakan GL_LINE_LOOP



  • Bentuk matahari dengan segitiga menggunakan GL_TRIANGLES

Comments

Popular posts from this blog

Membuat Lingkaran Dengan Algoritma Bresenham

                      Lingkaran adalah kumpulan dari titik-titik yang memiliki jarak dari titik  pusat yang sama untuk semua titik.   Lingkaran dibuat dengan  menggambarkan seperempat lingkaran, karena bagian lain dapat dibuat  sebagai bagian yang simetris. Penambahan x dapat dilakukan dari 0 ke r  sebesar unit step, yaitu menambahkan ± y untuk setiap step.  Pada dasarnya, mirip dengan penggambaran garis, algoritma  penggambaran lingkaran pun berusaha mencari solusi optimal sedemikian  rupa sehingga lingkaran yang dibentuk adalah sesempurna mungkin. Software yang diperlukan : 1. IDLE Pyhton 3.7  (IDLE) Dibawah ini Import Library Pada Python 3.7  : from OpenGL.GL import * from OpenGL.GLU import * from OpenGL.GLUT import * Link Download Library Python : https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyopengl Pilih Library Pyhton Yang Di bawah ini : 1. PyOpe...

Event Handling dan Font Text PyOpenGL

S etelah kemarin mencoba Event Handling Mouse & Keyboard. sekarang akan mencoba menggabungkan antara Event Handling & Font Text pada PyOpenGL. Library yang digunakan 1. PyOpenGL_accelerate-3.1.5 2. OpenGLContext 2.3.0 SOURCE CODE from OpenGLContext import testingcontext from OpenGL.GL import * from OpenGL.GLU import * from OpenGL.GLUT import * # Koordinat x dan y untuk posisi kotak pos_x = 0 pos_y = 0 # Warna Kotak merah = 0 hijau = 0 biru = 0 # Warna Teks teks_merah = 1 teks_hijau = 1 teks_biru = 1 # 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...