Titik dan Garis Membuat Titik dan Garis

39 setiap pixel setiap waktu. Algoritma garis Bressenhem disebut juga midpoint line algorithm adalah algoritma konversi penambahan nilai integer yang juga dapat diadaptasi untuk menggambar sebuah lingkaran. Langkah-langkah untuk membentuk garis menurut algoritma ini adalah: 1 Tentukan dua titik yang akan dihubungkan dalam pembentukan garis. 2 Tetukan salah satu titik disebelah kiri sebagai titik awal x , y dan titik lainnya sebagai titik akhir x 1 , y 1 . 3 Hitung Δ x, Δ y, Δ 2x, dan 2Δ y – 2Δ x. 4 Hitung parameter p = 2Δ y – Δ x. 5 Untuk setiap x k sepanjang jalur garis, dimulai dengan k = 0 • bila p k 0 maka titik selanjutnya x k +1, y k dan p k+1 = p k +2Δ y • bila tidak maka titik selanjutnya adalah x k +1, y k +1 dan p k+1 =p k +2Δ -y2Δ x. 6 Ulangi langkah nomor 5 untuk menentukan posisi pixel selanjutnya, sampai x=x n . Kegiatan Praktikum 3.1  Membuat Titik Create_Point.java public class Create_Point { public void render { glClearGL_COLOR_BUFFER_BIT;

D. Aktivitas Pembelajaran

40 glLoadIdentity; glColor3f0.0f, 1.0f, 0.0f; glPointSize10; glBeginGL_POINTS; glVertex2f100, 100; glVertex2f200, 100; glVertex2f200, 300; glVertex2f100, 300; glVertex2f150, 375; glVertex2f375, 375; glVertex2f425, 300; glVertex2f425, 100; glEnd; } public static void mainString[] args { Create_Point main = null; try { System.out.printlnKeys:; System.out.printlnesc - Exit; main = new Create_Point; main.create; main.run; } catch Exception ex { LOGGER.logLevel.SEVERE, ex.toString, ex; } finally { if main = null { main.destroy; } } } private void create throws LWJGLException { Display.setDisplayModenew DisplayModeDISPLAY_WIDTH, DISPLAY_HEIGHT; Display.setFullscreenfalse; Display.setTitleCreate Point; Display.create; Keyboard Keyboard.create; Mouse Mouse.setGrabbedfalse; Mouse.create; OpenGL initGL; resizeGL; To change body of generated methods, choose Tools | Templates. } private void run { while Display.isCloseRequested Keyboard.isKeyDownKeyboard.KEY_ESCAPE { if Display.isVisible { render; } else { if Display.isDirty { 41 render; } try { Thread.sleep100; } catch InterruptedException ex { } } Display.update; Display.sync60; } } private void destroy { Mouse.destroy; Keyboard.destroy; Display.destroy; } private void initGL { 2D Initialization glClearColor0.0f, 0.0f, 0.0f, 0.0f; glDisableGL_DEPTH_TEST; glDisableGL_LIGHTING; } private void resizeGL { 2D Scene glViewport0, 0, DISPLAY_WIDTH, DISPLAY_HEIGHT; glMatrixModeGL_PROJECTION; glLoadIdentity; gluOrtho2D0.0f, DISPLAY_WIDTH, 0.0f, DISPLAY_HEIGHT; glPushMatrix; glMatrixModeGL_MODELVIEW; glLoadIdentity; glPushMatrix; } } Keluaran Program 42 Kegiatan Praktikum 3.2  Membuat Garis Create_Line.java public class Create_Line { public void render { glColor3f1.0f, 0.0f, 1.0f; glLineWidth5; glBeginGL_LINES; glVertex2f100, 100; glVertex2f100, 350; glVertex2f200, 100; glVertex2f300, 350; glVertex2f350, 225; glVertex2f550, 225; glEnd; glFlush; } public static void mainString[] args { Create_Line main = null; try { System.out.printlnKeys:; System.out.printlnesc - Exit; main = new Create_Line; main.create; main.run; } catch Exception ex { LOGGER.logLevel.SEVERE, ex.toString, ex; } finally { if main = null { main.destroy; } } } private void create throws LWJGLException { Display.setDisplayModenew DisplayModeDISPLAY_WIDTH, DISPLAY_HEIGHT; } private void run { .... }