Laporan Praktikum PKG 2
Laporan Praktikum PKG 2
Primitive Drawing
DISUSUN OLEH :
Nama : Muhammad Farhan
NIM : 1657301061
Kelas : TI 2.3
Dosen
n Pembimbing : Fachry Yanuar,SST,MT
NIP :
Keterangan :
Dosen Pengajar
void userdraw(void)
{
//H
setColor(0.,0.,1.);
glBegin(GL_LINE_LOOP);
glVertex2f(40,40); //a
glVertex2f(40,180); //b
glVertex2f(60,180); //c
glVertex2f(60,120); //d
glVertex2f(100,120); //e
glVertex2f(100,180); //f
glVertex2f(120,180); //g
glVertex2f(120,40); //h
glVertex2f(100,40); //i
glVertex2f(100,100); //j
glVertex2f(60,100); //k
glVertex2f(60,40); //l
glEnd();
glBegin(GL_POLYGON);
glVertex2f(40,40); //a
glVertex2f(40,180); //b
glVertex2f(60,180); //c
glVertex2f(60,40); //l
glEnd();
//A
setColor(0.,1.,1.);
glBegin(GL_LINE_LOOP);
glVertex2f(160,40); //a
glVertex2f(160,160); //b
glVertex2f(180,180); //c
glVertex2f(220,180); //d
glVertex2f(240,160); //e
glVertex2f(240,40); //f
glVertex2f(220,40); //g
glVertex2f(220,100); //h
glVertex2f(180,100); //i
glVertex2f(180,40); //j
glEnd();
glBegin(GL_LINE_LOOP);
glVertex2f(180,120); //k
glVertex2f(220,120); //l
glVertex2f(220,160); //m
glVertex2f(180,160); //n
glEnd();
glBegin(GL_POLYGON);
glVertex2f(180,120); //k
glVertex2f(220,120); //l
glVertex2f(220,100); //h
glVertex2f(180,100); //i
glEnd();
//N
setColor(1.,0.,0.);
glBegin(GL_LINE_LOOP);
glVertex2f(280,40); //a
glVertex2f(280,180); //b
glVertex2f(300,180); //c
glVertex2f(340,80); //d
glVertex2f(340,180); //e
glVertex2f(360,180); //f
glVertex2f(360,40); //g
glVertex2f(340,40); //h
glVertex2f(300,140); //i
glVertex2f(300,40); //j
glEnd();
glBegin(GL_POLYGON);
glVertex2f(340,180); //e
glVertex2f(360,180); //f
glVertex2f(360,40); //g
glVertex2f(340,40); //h
glEnd();
}
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT);
userdraw();
glFlush();
}
• void userdraw(void);
Fungsi userdraw adalah suatu fungsi membuat kode program
untuk menghasilkan suatu gambar.
• glBegin(GL_LINES);
Untuk memulai menggambar garis
• glVertex2f(x1,y1);
glVertex2f(x2,y2);
Untuk menggambar garis dengan koordinatnya x1,y1 dan x2,y2
• glEnd();
Menandakan bahwa fungsi glBegin telah berakhir
• void userdraw(void)
Fungsi userdraw adalah suatu fungsi membuat kode program
untuk menghasilkan suatu gambar.
• setColor (0.,0.,1.);
Untuk menentukan warna dari titik yg dibuat dengan fungsi
setColor yaitu warna biru
• glBegin(GL_LINE_LOOP);
Untuk memulai menggambar polyline
• glVertex2f(40.,40);
Untuk menggambar titik dengan koordinat (40,40)
• glVertex2f(40.,180.);
Untuk menggambar titik dengan koordinat 40,180)
• glVertex2f(60.,180.);
Untuk menggambar titik dengan koordinat (60,180)
• glVertex2f(60.,120.);
Untuk menggambar titik dengan koordinat (60,120)
• glVertex2f(100.,120.);
Untuk menggambar titik dengan koordinat (100,120)
• glVertex2f(100.,180.);
Untuk menggambar titik dengan koordinat (100,180)
• glVertex2f(120.,180);
Untuk menggambar titik dengan koordinat (120,180)
• glVertex2f(120.,40.);
Untuk menggambar titik dengan koordinat (120,40)
• glVertex2f(100.,40.);
Untuk menggambar titik dengan koordinat (100,40)
• glVertex2f(100.,100.);
Untuk menggambar titik dengan koordinat (100,100)
• glVertex2f(60.,100.);
Untuk menggambar titik dengan koordinat (60,100)
• glVertex2f(60.,40.);
Untuk menggambar titik dengan koordinat (60,40)
• glEnd();
Menandakan bahwa fungsi glBegin telah berakhir
• glBegin(GL_POLYGON);
Untuk memulai menggambar polygon
• glVertex2f(40,40);
glVertex2f(40,180);
glVertex2f(60,180);
glVertex2f(60,40);
Ini adalah titik koordinat untuk menggambar huruf H dengan
menggunakan Polygon.
• glEnd();
Menandakan bahwa fungsi glBegin telah berakhir
• setColor (0.,1.,1.);
Untuk menentukan warna dari titik yg dibuat dengan fungsi
setColor yaitu warna biru muda(cyan)
• glBegin(GL_LINE_LOOP);
Untuk memulai menggambar polyline
• glVertex2f(160,40);
glVertex2f(160,160);
glVertex2f(180,180);
glVertex2f(220,180);
glVertex2f(240,160);
glVertex2f(240,40);
glVertex2f(220,40);
glVertex2f(220,100);
glVertex2f(180,100);
glVertex2f(180,40);
Ini adalah titik koordinat untuk menggambar huruf A dengan
menggunakan Polygon.
• glEnd();
Menandakan bahwa fungsi glBegin telah berakhir
• glBegin(GL_LINE_LOOP);
Untuk memulai menggambar polyline
• glVertex2f(180,120);
glVertex2f(220,120);
glVertex2f(220,160);
glVertex2f(180,160);
Ini adalah titik koordinat untuk menggambar huruf A dengan
menggunakan Polygon.
• glEnd();
Menandakan bahwa fungsi glBegin telah berakhir
• glBegin(GL_POLYGON);
Untuk memulai menggambar polygon
• glVertex2f(180,120);
glVertex2f(220,120);
glVertex2f(220,100);
glVertex2f(180,100);
Ini adalah titik koordinat untuk menggambar huruf A dengan
menggunakan Polygon.
• glEnd();
Menandakan bahwa fungsi glBegin telah berakhir
• setColor (1.,0.,0.);
Untuk menentukan warna dari titik yg dibuat dengan fungsi
setColor yaitu warna merah
• glBegin(GL_LINE_LOOP);
Untuk memulai menggambar polyline
• glVertex2f(280,40);
glVertex2f(280,180);
glVertex2f(300,180);
glVertex2f(340,80);
glVertex2f(340,180);
glVertex2f(360,180);
glVertex2f(360,40);
glVertex2f(340,40);
glVertex2f(300,140);
glVertex2f(300,40);
Ini adalah titik koordinat untuk menggambar huruf N dengan
menggunakan Polygon.
• glEnd();
Menandakan bahwa fungsi glBegin telah berakhir
• glBegin(GL_POLYGON);
Untuk memulai menggambar polygon
• glVertex2f(340,180);
glVertex2f(360,180);
glVertex2f(360,40);
glVertex2f(340,40);
Ini adalah titik koordinat untuk menggambar huruf A dengan
menggunakan Polygon.
• glEnd();
Menandakan bahwa fungsi glBegin telah berakhir
• void display(void)
memanggil method display dengan parameter void
• glClear(GL_COLOR_BUFFER_BIT);
Memanggil fungsi Clear untuk membersihkan layar/pixel
• userdraw();
Memanggil fungsi userdraw
• glFlush();
untuk memastikan bahwa perintah telah di eksekusi atau belum
• glutInit(&argc,argv);
Untuk inisialisasi GLUT dengan parameter baris perintah
• glutInitWindowSize(700,450);
Membuat windows dengan ukuran(700,450)
• glutInitWindowPosition(100,150);
Untuk mengatur posisi atau letak windows yaitu di posisi
(100,150)
• glutCreateWindow ("Nama");
Berfungsi untuk memberi nama/judul dari windows yang akan
ditampilkan
• glClearColor(0.55,0.80,0.15,0.0);
Untuk mengatur warna background windows yaitu warna Hijau
tua
• gluOrtho2D(0.,400.,0.,230.);
fungsi untuk mengatur proyeksi hasil eksekusi dan
mendefinisikan besarnya sistem koordinat dengan urutan kiri-
kanan dan bawah-atas.
• glutDisplayFunc(display);
untuk memanggil fungsi display yang menentukan gambar
yang telah dibuat
• glutMainLoop();
Fungsi untuk event perulangan, display pada callback akan
terus ditampilkan selama aplikasi itu tidak ditutup.