100% menganggap dokumen ini bermanfaat (1 suara)
2K tayangan4 halaman

Algoritma Pembentukan Garis

1. Algoritma pembentukan garis digital menentukan titik-titik antara dua endpoint berdasarkan perhitungan inkremen x dan y.
Hak Cipta
© Attribution Non-Commercial (BY-NC)
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
100% menganggap dokumen ini bermanfaat (1 suara)
2K tayangan4 halaman

Algoritma Pembentukan Garis

1. Algoritma pembentukan garis digital menentukan titik-titik antara dua endpoint berdasarkan perhitungan inkremen x dan y.
Hak Cipta
© Attribution Non-Commercial (BY-NC)
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 4

Algoritma Pembentukan Garis

Garis dibuat dengan menentukan dua endpoint atau posisi titik awal dan akhir dari suatu garis. Kemudian peralatan output membuat garis sesuai posisi titik-titik tersebut. Untuk peralatan analog seperti plotter dan random-scan display garis lurus dapa dihasilkan dengan halus. Pada peralatan digital garis lurus dihasilkan dengan menetapkan titik diskrit antara titik awal dan akhir. Posisi titik diskrit sepanjang garis lurus data diperhitungkan dari persamaan garis tersebut. Untuk menentukan nilai suatu titik, dapat digunakan prosedur dasar dimana x sebagai nilai kolom pixel dan y sebagai nilai scanline sebagai berikut : setPixel(x,y) bila nilai x dan y sudah tersimpan padaframe buffer untuk dapat menampilkannyapada layer menggunakan fungsi dasar getPixel(x,y)

1.

Algoritma Digital Differential Analyzer (DDA)


Algoritma Digital Differential Analyzer (DDA) adalah algoritma pembentukangaris berdasarkan perhitungan dx maupun dy dengan menggunakan rumus dy = m.dx.Garis dibuat dengan menentukan dua endpoint yaitu titik awal dan titik akhir. Setiapkoordinat titik yang membentuk garis diperoleh dari perhitungan kemudian dikonversikanmenjadi nilai integer.

Algoritma pembentukan garis DDA: 1) Tentukan dua titik yang akan dihubungkan dalam pembentukan garis. 2) Tentukan salah satu titik sebagai awal(x0,y0) dan titik akhir(x1,y1). 3) Hitung dx=x1x0, dan dy= y1y0. 4) Tentukan langkah, yaitu dengan cara jarak maksimum jumlah penambahan nilai x maupun nilai y, dengan cara : *Bila nilai absolut dari dx lebih besar dari absolut dy, maka langkah= absolut dari dx. *Bila tidak maka langkah= absolut dari dy 5) Hitung penambahan koordinat pixel yaitu x_increment=dx/langkah, dan y_increment=dy/langkah 6) Koordinat selanjutnya (x+x_increment, y+y_increment) 7) Posisi pixel pada layar ditentukan dengan pembulatan nilai koordinat tersebut. 8) Ulangi nomor 6 dan 7 untuk menentukan posisi pixel selanjutnya,sampai x=x1 dan y=y1.

Keuntungan dari algoritma ini adalah tidak perlu menghitung koordinatberdasarkan persamaan yang lengkap (menggunakan metode offset). Sedangkankerugiannya adalah adanya akumulasi Round-off errors, sehingga garis akan melencengdari garis lurus, selain itu operasi round-off juga menghabiskan waktu.

Contoh penerapan algoritma DDA : Contoh 1 : garis dengan endpoint (1,3,8,5)

Penggambaran garis:

Berikut ini adalah penerapan algoritma DDA dengan Java:


class hitungDDA{ public void hitung(int p1x, int p1y, int p2x, int p2y) { while (p1x < p2x) { double step = 0; int dx = p2x - p1x; int dy = p2y - p1y; int absolutDx = Math.abs(dx); int absolutDy = Math.abs(dy); if (absolutDx > absolutDy) { step = absolutDx; } else { step = absolutDy; } double xplus = Math.ceil(dx/step);

double yplus = Math.ceil(dy/step); p1x += xplus; p1y += yplus; System.out.println("titik berikutnya:("+p1x+","+p1y+")"); } } } class Run{ public static void main (String[] args) { hitungDDA dda = new hitungDDA(); //misalnya titik p1=(1,1) dan p2=(5,5) dda.hitung(1,1,5,5); } }

2. Algoritma Bresenham Algoritma Garis Bressenham merupakan algoritma yang menentukan dimana titik-titik dalam raster n-dimensi harus ditempatkan untuk membentuk garis lurus antara dua titik yang diberikan. Hal ini biasanya digunakan untuk menggambar garis pada layar komputer, karena hanya menggunakan integer penambahan, pengurangan dan pergeseran bit, yang mana semua itu merupakan proses yang sangat murah dalam arsitektur komputer yang standar. Algoritma ini adalah algoritma yang paling awal dikembangkan di bidang grafika komputer . Algoritma ini juga dapat membentuk lingkaran dengan sedikit penambahan pada algoritma-nya. Prinsip dari algoritma Bresenham adalah : 1. 2. Sumbu vertikal memperlihatkan posisi scan line. Sumbu horizontal memperlihatkan kolom pixel

3. Pada tiap langkah, penentuan pixel selanjutnya didasari oleh parameter integer yang nilainya proporsional dengan pengurangan antara vertical separations dari dua posisi dari nilai actual. Untuk menentukan jumlah pixel yang membuat suatu garis menggunakan algoritma bresenhem adalah sebagai berikut : 1. Masukan 2 endpoints, simpan endpoints kiri sebagai (x0, y0) dan kanan (x1,y1) 2. Hitung konstanta x, y, 2y, 2Dx,2y2x dan nilai awal parameter keputusan p0= 2y x 3. Pada setiap xk di garis, dimulai dari k=0, ujilah : Jika pk 0 maka plot (xk+1, yk+1) dan pk= pk+ 2y -2x 4. Ulangi tahap 4 sampai mencapai x,y yang di tuju.

contoh penerapan algoritma Bresenham : Contoh 1: Garis dengan titik (20,10,30,18) X = 10, Y = 8 Po = 2 Y -X = 6 2.Y = 16 2 Y - 2 X = -4

Anda mungkin juga menyukai