04 Grafik Komp-Geometri Primitive.pptx

download 04 Grafik Komp-Geometri Primitive.pptx

of 12

Transcript of 04 Grafik Komp-Geometri Primitive.pptx

Slide 1

Universitas Gunadarma

Grafik Komputer : Geometri Primitive 1/12Grafik Komputer :Geometri PrimitiveGrafik Komputer dan Pengolahan CitraMenggambar GARIS (1/11)Garis adalah kumpulan titik-titik yang tersusun sedemiki- an rupa sehingga memiliki pangkal dan ujung.Suatu titik pada layar terletak pada posisi (x,y), untuk menggambarkannya plot suatu pixel dengan posisi yang berkesesuaian.Contoh program :Setpixel (x,y)Penampilan garis pada layar komputer dibedakan berdasarkan Resolusi-nya.Resolusi : keadaan pixel yang terdapat pada suatu area tertentuContoh : Resolusi 640x480, berarti pada layar kompuer terdapat 640 pixel per-kolom dan 480 pixel per-baris.Resolusi dapat pula dibedakan menjadi kasar, medium dan halus.Grafik Komputer : Geometri Primitive 2/12Low ResolutionHigh Resolution(x, y)(x, y)Grafik Komputer dan Pengolahan CitraMenggambarGARIS(2/11)Pixel Aktif Untuk menggambarkan garis seperti gambar diatas, diperlukan pixel aktif. Parameter pixel address yang membentuk garispada layar adalah :Grafik Komputer : Geometri Primitive 3/12PixelXY112223333444555665776Grafik Komputer dan Pengolahan CitraMenggambar GARIS (3/11)Untuk menampilkan atau menggambarkan garispada layar dibutuhkan minimal 2 titik (endpoint), yaitu titik awal dan akhir.Awal garis dimulai dengan titik atau pixel pertama,P1 diikuti titik kedua, P2.Untuk mendapatkan titik-titik selanjutnya sampai ke Pn perlu dilakukan inkrementasi atas nilai koordinat sumbu X dan Y pada titik sebelumnya.Perhitungan inkrementasi untuk masing-masing sumbu adalah berbeda :n dan m adalah nilai inkrementasiPersamaan Umum Garis : y = mx +cGrafik Komputer : Geometri Primitive 4/12JenisSumbu-XSumbu-YHorisontalGerak (X=X+1)KonstanVertikalKonstanGerak (Y=Y+1)DiagonalGerak (X=X+1)Gerak (Y=Y+1)BebasGerak (X=X+n)Gerak (Y=Y+n)Grafik Komputer dan Pengolahan CitraMenggambar GARIS (4/11)yGaris HorisontalGaris yang membentang secara paraleldengan sumbu X dengan asumsi titik P1pada koordinat X1 lebih kecil daripada X2 dari P2, sedangkan Y1 dan Y2 konstantAlgoritma :x1.2.Menentukan titik awal (P1) dan titik akhir (P2)Periksa posisi sumbu (koordinat) Jika titik ahir < titik awal,Lakukan inkrementasi sumbu X dati titik awal sampai titik akhirJika tidak, makaLakukan dekrementasi sumbu X dati titik awal sampai titik akhirTampilkan garis menggunakan parameter koordinat yang telah dihitung.3.Garis VertikalyGaris yang membentang secara paraleldengan sumbu Y dengan asumsi titik P1pada koordinat Y1 lebih kecil daripada Y2 dari P2,sedangkan X1 dan X2 konstantAlgoritma :1.2.Menentukan titik awal (P1) dan titik akhir (P2)Periksa posisi sumbu (koordinat) Jika titik ahir < titik awal,Lakukan inkrementasi sumbu Y dati titik awal sampai titik akhirJika tidak, makaLakukan dekrementasi sumbu Y dati titik awal sampai titik akhirTampilkan garis menggunakan parameter koordinat yang telah dihitung.x3.Grafik Komputer : Geometri Primitive 5/12Grafik Komputer dan Pengolahan CitraMenggambar GARIS (5/11)Garis DiagonalyGaris yang membentang secara paralel45 derajat dari sumbu X atau sumbu Y dengan asumsi titik awal P1 dengan koordinat X1 dan Y1 lebih kecil daripada X2 dan Y2 atau sebaliknya.Algoritma :x1.2.Menentukan titik awal (P1) dan titik akhir (P2)Periksa posisi sumbu (koordinat) Jika titik ahir < titik awal,Lakukan inkrementasi sumbu X dan sumbut Y dati titik awalsampai titik akhirJika tidak, makaLakukan dekrementasi sumbu X dan sumbu Y dati titik awal sampai titik akhirTampilkan garis menggunakan parameter koordinat yang telah dihitung.3.Grafik Komputer : Geometri Primitive 6/12Grafik Komputer dan Pengolahan CitraMenggambar GARIS (6/11)Algoritma Pembentukan Garis Bebas(Simple Digital Differential Analyzer/DDA)Garis yang membentang antara 2 titik,P1 dan P2, selalu membentuk sudut yang besarnya sangat bervariasi.Sudut yang terbentuk menentukan kemiringan suatugaris atau disebut gradient / slop atau disimbolkan dengan parameter m.Jika titik-titik yang membetuk garis adalah :(x1,y1) dan (x2,y2)makaYY2-Y1m=m=YX2-X1P2(x2,y2) YP1(x1,y1) XGrafik Komputer : Geometri Primitive 7/12Grafik Komputer dan Pengolahan CitraMenggambar GARIS (7/11)Algoritma DDATentukan 2 titik yang akan dihubungkan dalam pembentukan garisTentukan titik awal yaitu (x0, y0) dan (x1,y1) titik akhirHitung dx = x1-x0 dan dy = y1-y0Tentukan step = max (|dx|,|dy|)Hitung penambahan koordinat pixel Xinc = dx/step dan Yinc = dy/stepKoordinat selanjutnya (x+Xinc,y+Yinc)Posisi pada layar ditentukan dengan pembulatan nilai koordinat tersebutUlangi nomor 6 dan 7 untuk menetukan posisi pixel berikutnya sampai x=x1 dan y=y1Grafik Komputer : Geometri Primitive 8/12Grafik Komputer dan Pengolahan CitraMenggambar GARIS (8/11)1615141312111098Algoritma BresenhamActual path8 9 10 11 12 13 14 15 16Pixel selanjutnya ?Algoritma Bresenhma memilih titik terdekat dari actual pathSetiap sampling akan diinkrement menjadi 1 atau 0Kondisi awal :Jikam < 1, maka m bernilai positifBresenham melakukan inkremen 1 untuk x dan 0 atau1 untuk y.Grafik Komputer : Geometri Primitive 9/12Grafik Komputer dan Pengolahan CitraMenggambar GARIS (9/11)Algoritma BresenhamAlgoritma Bresenham merupakan algoritma penggambaran garis yang efisiendengan menggunakan perhitungan incremental integer.

Prinsip dari algoritma Bresenham adalah :Sumbu vertikal memperlihatkan posisi scan line.Sumbu horizontal memperlihatkan kolom pixelPada tiap langkah, penentuan pixel selanjutnya didasari oleh parameter integer yang nilainya proporsional dengan pengurangan antara vertical separations dari dua posisi piksel dari nilai actual.

Grafik Komputer : Geometri Primitive 8/12Grafik Komputer dan Pengolahan CitraMenggambar GARIS (10/11)Algoritma BresenhamTentukan 2 titik yang akan dihubungkan dalam pembentukan garisTentukan salah satu titik di sebelah kiri titik awal dan titik lainnya sebagai titik akhir Hitung nilai dx, dy, 2dy, dan 2dy-dxHitung parameter P0 = 2dy dxUntuk setiap xk sepanjang garis dimulai dengan k=0Bila Pk0, maka titik selanjutnya adlah (xk+1, yk+1) dan Pk+1 = Pk+2dy-2dxUlangi langkah 5 untuk menentukan posisi pixel selanjutnya sampai x=x1 dan y = y1Grafik Komputer : Geometri Primitive 8/12Grafik Komputer dan Pengolahan CitraMenggambar GARIS (11/11)Latihan Soal:Diketahui 2 titik untuk membentuk garis yaitu titik A(10,10) dan B(17,16). Buat tabel perhitungan untuk titik-titik yang dihasilkan dengan menggunakan algortima DDA dan bresenhamA(20,10) dan B(30,18)

Grafik Komputer : Geometri Primitive 8/12Grafik Komputer dan Pengolahan Citra