Anda di halaman 1dari 10

LAPORAN PRAKTIKUM 2

MEMBUAT PRIMITIF GIOMETRI 1


Dosen Mata Kuliah
Alifyah NSH, S.pd., M.pd

OLEH :
SRI ERFIANA
1829041009
PTIK F 2018

PRODI PENDIDIKAN TEKNIK INFORMATIKA DAN KOMPUTER


JURUSAN PENDIDIKAN TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS NEGERI MAKASSAR
2020
PRAKTIKUM 2
PENGENALAN PRIMITIF GIOMETRI 1
A. Tujuan praktikum
1. Mahasiswa mampu memahami sistem kordinat 2D
2. Mahasiswa mampu Menggambar Titik
3. Mahasiswa mampu Menggambar Garis
4. Mahasiswa mampu setting warna objek giometri primitif
B. Dasar Teori
1. Titik
Dalam geometri, titik adalah konsep abstrak yang tidak berwujud
atau tidak berbentuk, tidak mempunyai ukuran, tidak mempunyai berat, atau
tidak mempunyai panjang, lebar, atau tinggi. Titik adalah ide atau gagasan
abstrak yang hanya ada dalam benak orang yang memikirkannya.

Melukis atau menggambar sebuah titik dapat menggunakan ujung


benda, misalnya dengan ujung pinsil, pena, jangka, atau kapur yang ditekan
pada bidang tulis atau permukaan kertas atau papan tulis. Apabila anda
menekankan ujung pinsil pada permukaan kertas maka noktah hitam yang
membekas pada permukaan kertas tersebut adalah titik.
2. Garis
Garis adalah konsep yang tidak dapat dijelaskan dengan
menggunakan kata-kata sederhana atau kalimat simpel. Karenanya garis
juga dikelompokan ke dalam usur yang tidak didefiniskan. Garis adalah ide
atau gagasan abstrak yang bentuknya lurus, memanjang ke dua arah, tidak
terbatas atau tidak bertitik akhir, dan tidak tebalAtau model garis dapat
dibuat dengan menggambar bagian sisi benda yang lurus, misalnya
menggambar salah satu sisi penggaris kayu. Berikut adalah model garis
yang diperoleh dari hasil menggambar salah satu bagian sisi penggaris
dengan memberi tanda anak panah pada kedua ujungnya yang menandakan
bahwa garis tersebut memanjang kedua arah tidak mempunyai titik akhir.
C. PRAKTIKUM
1. Program 2.1
a. Hasil Program

b. Analisis sintaks perbaris


1) #include <GL/glut.h> (adalah header yang digunakan untuk
program grafis menggunakan Open Gl-Glut)
2) void gambar {(Disini tempat untuk menggambar yaitu suatu fungsi
untuk membuat kode program untuk menghasilkan suatu gambar)
3) glPointSize (digunakan untuk mengatur besar titik yang akan
digambar. Di sini, kita akan menggambar titik dengan ukuran 6.0)
4) glBegin (digunakan untuk menggambar titik. Posisi titik yang akan
digambar harus ditulis antara glBegin(GL_POINTS) dan glEnd()
5) glColor3f (0.0,0.0,0.5)adalah warna dari titk yang akan digambar.
Format yang digunakan adalah format RGB
6) glVertex2i (20,40)berarti posisi titik adalah 20 satuan ke kiri, 40
satuan ke atas. Untuk koordinat, posisi tengah (posisi 0,0,0) berada
tepat di tengah-tengah layar. Sumbu X negatif berarti ke kiri, positif
berarti ke kanan. Sumbu Y positif berarti ke atas, negatif ke bawah.
Sedangkan untuk sumbu Z, tanda positif berarti di depan layar (di
luar layar), jadi tidak terlihat di layar. Jadi sumbu Z harus
menggunakan tanda negatif agar objek dapat dilihat.
7) glEnd(); sebagai konstanta simbolik mewakili fungsi primitif yang
diinginkan.
8) void display(void) { (Fungsi ini digunakan untuk menentukan
apakah akan menggunakan model pewarnaan RGBA atau indek
warna. Dengan fungsi ini juga bisa menentukan apakah akan
menggunakan windows buffer single atau double.)
9) glClear(GL_COLOR_BUFFER_BIT);void display(void) { (Fungsi
ini digunakan untuk menentukan apakah akan menggunakan model
pewarnaan RGBA atau indek warna. Dengan fungsi ini juga bisa
menentukan apakah akan menggunakan windows buffer single atau
double.)
10) glutSwapBuffers(); (untuk menukar bagian belakang buffer menjadi
buffer layar (screen buffer)
11) int main (int argc,char** argv){ (Fungsi ini menginisialisasi glut dan
memproses argument command_line yg disertakan(jika ada).
Fungsi ini harus di panggil pertama kali sebelum pemanggilan
terhadap fungsi-fungsi yang lain.)
12) glutInitDisplayMode (GLUT_DOUBLE|GLUT_RGB); (Fungsi ini
digunakan untuk menentukan apakah akan menggunakan model
pewarnaan RGBA atau indek warna. Dengan fungsi ini juga bisa
menentukan apakah akan menggunakan windows buffer single atau
double.)
13) glutInitWindowPosition(100,100); (Fungsi ini menentukan letak
window dengan patokkannya ialah pada window kiri atas.)
14) glutInitWindowSize(640,480); (fungsi ini menspesifikasikan
ukuran window yang dibuat dalam pixel.)
15) glutCreateWindow("Membuat Titik"); (fungsi untuk membuat
window dalam konteks openGL, dan akan menghasilkan identitas
atau judul window tersebut)
16) glClearColor(1.0,1.0,0.1,0.0); (sebagai pembaca warna yang akan
ditampilkan atau Mendefinisikan warna dari windows yang dibuat
dengan warna (1,1,1) yaitu warna putih)
17) gluOrtho2D(-320.,320.,-240.0,240.0); (mendefinisikan besarnya
sistem koordinat dengan range sumbu x adalah [- 320,320]
dan range untuk sumbu y adalah [- 240,240])
2. Program 2.2
a. Hasil Program

b. Analisis Sintaks Perbaris


1) #include <GL/glut.h> (adalah header yang digunakan untuk
program grafis menggunakan Open Gl-Glut)
2) void gambar {(Disini tempat untuk menggambar yaitu suatu fungsi
untuk membuat kode program untuk menghasilkan suatu gambar)
3) glPointSize (digunakan untuk mengatur besar titik yang akan
digambar. Di sini, kita akan menggambar titik dengan ukuran 6.0)
4) glBegin (digunakan untuk menggambar titik. Posisi titik yang akan
digambar harus ditulis antara glBegin(GL_POINTS) dan glEnd()
5) glColor3f (1,0.0,0.0,0)adalah warna dari titk yang akan digambar.
Format yang digunakan adalah format RGB
6) glVertex2i (0,1,0,10)berarti posisi titik adalah 0,1 satuan ke kiri,
0,10 satuan ke atas. Untuk koordinat, posisi tengah (posisi 0,0,0)
berada tepat di tengah-tengah layar. Sumbu X negatif berarti ke kiri,
positif berarti ke kanan. Sumbu Y positif berarti ke atas, negatif ke
bawah. Sedangkan untuk sumbu Z, tanda positif berarti di depan
layar (di luar layar), jadi tidak terlihat di layar. Jadi sumbu Z harus
menggunakan tanda negatif agar objek dapat dilihat.
7) glEnd(); sebagai konstanta simbolik mewakili fungsi primitif yang
diinginkan.
8) void display(void) { (Fungsi ini digunakan untuk menentukan
apakah akan menggunakan model pewarnaan RGBA atau indek
warna. Dengan fungsi ini juga bisa menentukan apakah akan
menggunakan windows buffer single atau double.)
9) glClear(GL_COLOR_BUFFER_BIT);void display(void) { (Fungsi
ini digunakan untuk menentukan apakah akan menggunakan model
pewarnaan RGBA atau indek warna. Dengan fungsi ini juga bisa
menentukan apakah akan menggunakan windows buffer single atau
double.)
10) glutSwapBuffers(); (untuk menukar bagian belakang buffer menjadi
buffer layar (screen buffer)
11) int main (int argc,char** argv){ (Fungsi ini menginisialisasi glut dan
memproses argument command_line yg disertakan(jika ada). Fungsi
ini harus di panggil pertama kali sebelum pemanggilan terhadap
fungsi-fungsi yang lain.)
12) glutInit(&argc,argv); (glutInit merupakan fungsi yang mengizinkan
sebuah aplikasi untuk mendapatkan argument command line(pada
cmd) dan system inisialisasi)
13) glutInitDisplayMode (GLUT_DOUBLE|GLUT_RGB); (Fungsi ini
digunakan untuk menentukan apakah akan menggunakan model
pewarnaan RGBA atau indek warna. Dengan fungsi ini juga bisa
menentukan apakah akan menggunakan windows buffer single atau
double.)
14) glutInitWindowPosition(100,100); (Fungsi ini menentukan letak
window dengan patokkannya ialah pada window kiri atas.)
15) glutInitWindowSize(640,480); (fungsi ini menspesifikasikan
ukuran window yang dibuat dalam pixel.)
16) glutCreateWindow("Membuat Garis"); (fungsi untuk membuat
window dalam konteks openGL, dan akan menghasilkan identitas
atau judul window tersebut)
17) glClearColor(1.0,1.0,0.1,0.0); (sebagai pembaca warna yang akan
ditampilkan atau Mendefinisikan warna dari windows yang dibuat
dengan warna (1,1,1) yaitu warna putih)
18) gluOrtho2D(-1.,1.,-1.1,-1.1); (mendefinisikan besarnya sistem
koordinat dengan range sumbu x adalah [-1,1]
19) dan range untuk sumbu y adalah [-1,1)glutIdleFunc(display); Fungsi
ini memanggil fungsi lain yg menentukan konten dari windows yg
telah di buat sebelumnya.)
20) glutMainLoop(); (Fungsi untuk event perulangan, display pada
callback akan terus ditampilkan selama aplikasi itu tidak ditutup)
21) return0; (fungsi main () berakhir dan mengembalikan kode yang
mengikuti instruksi tersebut, dalam kasus ini . Ini merupakan cara
yang paling sering digunakan untuk mengakhiri program.
D. LATIHAN
1. Latihan 1
a. Hasil program Line Strip
c. Hasil Program Line Loop

5. Latihan 2
a. Hasil Program

E. Kesimpulan
1. Praktikum 2.1

Anda mungkin juga menyukai