Lompat ke konten Lompat ke sidebar Lompat ke footer

Tugas Grafika Menampilkan Segitiga Siku-siku

TUGAS 1 GRAFIKA KOMPUTER

Buatlah agar segitiga menjadi segitiga siku-siku dan terletak pada posisi 

1. Kiri atas, 
2. Kanan atas, 
3. Kiri bawah, 
4. Kanan bawah, dan 
5. Tepat di tengah, 

Dengan mengubah parameter pada fungsi glVertex3f(a, b, c). Setting nama window sesuai nama kelompoknya glutCreateWindow("3X Kelompok X").

1. Segitiga siku-siku kiri atas

Source Code:

#include <stdlib.h>
#include <GL/glut.h>

void renderScene (void) {

 glClear (GL_COLOR_BUFFER_BIT);
 glBegin (GL_TRIANGLES);

 //segitiga siku-siku kiri atas
 glVertex3f(-1.0,1.0,0.0);//a
 glVertex3f(-1.0,0.5,0.0);//b   
 glVertex3f(-0.5,1.0,0.0);//c 

 glEnd();
 glFlush();
}
void main (int argc, char **argv) {
 glutInit(&argc, argv);
 glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA);
 glutInitWindowPosition(100,100);
 glutInitWindowSize(520,520);
 glutCreateWindow("HelmyKurniawan_Idam Iganda-DimasNur");
 glutDisplayFunc(renderScene);
 glColor3f(0.0,1.0,1.0);
 glutMainLoop();
}

Screen Shoot :

Segitiga siku-siku kiri atas

2. Segitiga siku-siku kanan atas

Source Code:

#include <stdlib.h>
#include <GL/glut.h>

void renderScene (void) {

 glClear (GL_COLOR_BUFFER_BIT);
 glBegin (GL_TRIANGLES);

 //segitiga siku-siku kanan atas
 glVertex3f(1.0,1.0,0.0);//a
 glVertex3f(1.0,0.5,0.0);//b  
 glVertex3f(0.5,1.0,0.0);//c 

 glEnd();
 glFlush();
}
void main (int argc, char **argv) {
 glutInit(&argc, argv);
 glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA);
 glutInitWindowPosition(100,100);
 glutInitWindowSize(520,520);
 glutCreateWindow("HelmyKurniawan_Idam Iganda-DimasNur");
 glutDisplayFunc(renderScene);
 glColor3f(1.0,1.0,0.0);
 glutMainLoop();
}

Screen shoot :

Segitiga siku-siku kanan atas

3. Segitiga siku-siku kiri bawah

Source code :

#include <stdlib.h>
#include <GL/glut.h>

void renderScene (void) {

 glClear (GL_COLOR_BUFFER_BIT);
 glBegin (GL_TRIANGLES);

 //segitiga siku-siku kiri bawah
 glVertex3f(-1.0,-1.0,0.0);//a
 glVertex3f(-1.0,-0.5,0.0);//b  
 glVertex3f(-0.5,-1.0,0.0);//c 

 glEnd();
 glFlush();
}
void main (int argc, char **argv) {
 glutInit(&argc, argv);
 glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA);
 glutInitWindowPosition(100,100);
 glutInitWindowSize(520,520);
 glutCreateWindow("HelmyKurniawan_Idam Iganda-DimasNur");
 glutDisplayFunc(renderScene);
 glColor3f (0.0,1.0,0.0);
 glutMainLoop();
}

Screen shoot :

Segitiga siku-siku kiri bawah

4. Segitiga siku-siku kanan bawah

Source code :

#include <stdlib.h>
#include <GL/glut.h>

void renderScene (void) {

 glClear (GL_COLOR_BUFFER_BIT);
 glBegin (GL_TRIANGLES);

 //segitiga siku-siku kanan bawah
 glVertex3f(1.0,-1.0,0.0);//a
 glVertex3f(1.0,-0.5,0.0);//b  
 glVertex3f(0.5,-1.0,0.0);//c 

 glEnd();
 glFlush();
}
void main (int argc, char **argv) {
 glutInit(&argc, argv);
 glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA);
 glutInitWindowPosition(100,100);
 glutInitWindowSize(520,520);
 gluOrtho2D(-50.,50.,-50.,50.);
 glutCreateWindow("HelmyKurniawan_Idam Iganda-DimasNur");
 glutDisplayFunc(renderScene);
 glColor3f(1.0,0.0,0.0);
 glutMainLoop();
}

Screen Shoot :

Segitiga siku-siku kanan bawah

5. Segitiga siku-siku tepat ditengah

Source code segitiga siku-siku ditengah:

#include <stdlib.h>
#include <GL/glut.h>

void renderScene (void) {

 glClear (GL_COLOR_BUFFER_BIT);
 glBegin (GL_TRIANGLES);

 //segitiga siku-siku tengah
 glVertex3f(-0.5,-0.5,0.0);//a  
 glVertex3f(-0.5,0.5,0.0);//b 
 glVertex3f(0.5,-0.5,0.0);//c 

 glEnd();
 glFlush();
}
void main (int argc, char **argv) {
 glutInit(&argc, argv);
 glutInitDisplayMode(GLUT_DEPTH | GLUT_SINGLE | GLUT_RGBA);
 glutInitWindowPosition(100,100);
 glutInitWindowSize(520,520);
 gluOrtho2D(-50.,50.,-50.,50.);
 glutCreateWindow("HelmyKurniawan_Idam Iganda-DimasNur");
 glutDisplayFunc(renderScene);
 glutMainLoop();
}

Screen Shoot :

Segitiga siku-siku tepat ditengah

 
Penjelasan Program :

• glutInit memberi tahu MS VC++ bahwa OpenGL library dipakai kedalam program, format fungsi yang dipakai void main (int argc, char **argv)

• glutDisplayFunc(renderscene) fungsinya untuk memanggil jendela display apabila dihilangkan maka jendela akan muncul kemudian akan menghilang

• glutInitWindowPosition fungsinya merubah posisi kordinat munculnya layar display, tergantung lcd layar laptop yang digunakan. Pada ukuran 90.90 layar display akan muncul di kiri layar atas

• glutClear(GL_COLOR_BUFFER_BIT) fungsinya untuk mendeskripsikan warna tampilan windows yang dibuat

• glVertex3f untuk membentuk sebuah dimensi dengan parameter x,y,z sesuai titik koordinatnya masing-masing (untuk membentuk objek)

• glBegin(GL_TRIANGLE) untuk membuat sebuah objek yang memiliki bentuk segitiga, line, polygon

• glutCreateWindow("HelmyKurniawan_Idam Iganda-DimasNur") untuk memberi nama pada jendela display yang muncul

• Header glut.h adalah header yang biasa digunakan dalam pemrograman grafis yang sudah kita install yaitu OpenGL-glut

• glutMainLoop untuk melooping perulangan display agar tidak berhenti

• glutInitWindowSize(520,520) untuk mengatur panjang dan lebar jendela display yang muncul, formatnya (init width, init height)

• glColor3f menambahkan color sesuai dengan kode warna pada openGL

....helmykediricom

Helmy Kediri
Helmy Kediri Sebaik-baik manusia adalah yang paling bermanfaat bagi orang lain. Ketika seseorang telah meninggal dunia, maka terputuslah amalnya kecuali 3 (perkara) : shadaqah jariyah, ilmu yang bermanfaat, dan anak saleh yang mendokan orang tuanya