Anda di halaman 1dari 19

JURNAL

AGORITMA PEMBENTUKAN GARIS DDA


(Digital Differential Analyzer)

NAMA KELOMPOK
1. AMUDIN
2. KHAERUDIN RAHMAN
Algoritma Pembentukan Garis DDA (Digital Differential Analyzer)
Merupakan algoritma pembentukan garis berdasarkan perhitungan dx
maupun dy. Garis dibuat dengan menentukan dua end-point, yaitu titik
awal dan akhir, setiap koordinasi titik yang membentuk garis diperoleh dari
perhitungan, kemudian dikonversikan menjadi nilai integer .

Bentuk baris:
Cenderung mendatar

▪ Gradien bernilai 0 < m < 1


▪ Pixel bertambah 1 pada sumbu x dan bertambah sebesar m pixel pada
sumbu y
Cenderung tegak

▪ Gradien bernilai m > 1


▪ Pixel bertambah 1 pada sumbu y dan bertambah sebesar 1/m pixel pada
sumbu x

Miring 450

▪ Gradien bernilai m = 1
▪ Pixel bertambah 1 pada sumbu x dan bertambah sebesar 1 pixel pada
sumbu y
Langkah-langkah untuk membentuk garis menurut algoritma DDA adalah sebagai berikut :

1. Tentukan dua titik yang akan dihubungkan dalam pembentukan garis.

2. Tentukan salah satu titik sebagai titik awal (x0,y0) dan titik akhir (x1,y1).

3. Hitung dx = x1-x0, dan dy = y1-y0.

4. Tentukan step, yaitu jarak maksimum jumlah penambahan nilai x maupun nilai dy,
dengan cara :
- Bila nilai absolut dari dx lebih besar dari absolut dy, maka step = absolut dari dx

- Bila tidak, maka step = absolut dari dy

5. Hitung penambahan koordinat pixel, yaitu x_increment = dx/step, dan y_increment =


dy/step.

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 x0=x1 dan
y0=y1.
Contoh penerapan DDA
Diberikan titik awal (2,5) dan Titik akhir (7,12) ,selesaikan dengan menggunakan
algoritma DDA
Penyelesaian :

1. Hitung Dx dan Dy

Dx = x2-x1 dan Dy = y2-y1


Dx = 7-2 = 5
Dy = 12-5 = 7
|Dx| > |Dy| r = Dx | r = Dy
Dx = 5 dan Dy = 7
r=7

2. Hitung Pixel |Dx| dan |Dy|

Xr = Dx/ r = 5/7 = 0.714


Yr = Dy/ r = 7/7 = 1
x = x + Xr |y = y + Yr
Tabel algoritma pembentukan garis DDA

k X Y X_increment Y_increment
- - - 2 5
1 2.714 6 3 6
2 3.428 7 3 7
3 4.142 8 4 8
4 4.856 9 5 9
5 5.57 10 6 10
6 6.284 11 6 11
7 6.998 12 7 12
ALGORITMA GARIS BRESENHAM
ALGORITMA GARIS BRESENHAM adalah suatu algoritma yang
menentukan titik-titik dalam dimensi yang membentuk pendekatan dekat dengan
garis lurus antara dua titik yang diberikan. Pendekatan ini biasa digunakan untuk
menggambar garis pada layar komputer, karena hanya menggunakan integer
penambahan, pengurangan dan pergeseran. Algoritma ini merupakan salah satu
algoritma paling awal yang dikembangkan di bidang komputer grafis.

Bresenham pada tahun 1965, melakukan perbaikan dari algoritma


perhitungan koordinat piksel yang menggunakan persamaan (1), dengan cara
menggantikan operasi bilangan rii perkalian dengan operasi penjumlahan, yang
kemudian dikenal dengan Algoritma Bresenham. Pada algoritma bresenham, nilai
y kedua dan seterusnya, dihitung dari nilai y sebelumnya, sehingga hanya titik y
pertama yang perlu dilakukan operasi secara lengkap. Perbaikan algoritma ini
ternyata tidak menghasilkan perbaikan yang cukup siginifikan. Perbaikan
berikutnya dilakukan dengan cara menghilangkan operasi bilangan riel dengan
operasi bilangan integer. Operasi bilangan integer jauh lebih cepat dibandingkan
dengan operasi bilangan riel, terutama pada penambahan dan pengurangan.
Langkah – Langkah pembentukan Algoritma Bresenham :
Algoritma Bresenham (untuk dx < dy) :
Tentukan 2 titik yang akan dihubungkan dalam pembentukan garis.
Tentukan salah satu titik disebelah kiri sebagai titik awal, yaitu (X0, Y0) dan titik
lainnya sebagai titik akhir (X1, Y1)
Hitung Dx=x2-x1, Dy=y2-y1, d1=2*Dy dan d2*Dy-2Dx, e=d1-Dy, x=x1, y=y1
Gambar pixel di (x, y)
Untuk setiap e>=0 hitung e=e+d2 dan x=x+1 Jika tidak, hitung e=e+d1 dan x=x
Hitung y=y+1
Jika y>=y2 stop, Jika tidak kembali ke langkah 4.
CONTOH :
Diketahui sebuah sumbu dengan titik koordinat (10,15) dan (20,12). Gambarkan
garis tersebut dengan menggunakan Algoritma Bresenham.
Penyelesaian :
1. (X1, Y1) dan (X2, Y2)
2. ΔX = X2 – X1 = 20 – 10 = 10
3. ΔY = Y2 – Y1 = 12 – 5 = 7
4. P0 = 2ΔY – ΔX = 2(7) – 10 = 4
5. A = 2ΔY = 14
6. B = 2ΔY - 2ΔX = -6
7. Tabel Iterasi (putara)
K Pk (Xk+1, Yk+1)
0 4 (11 , 6)
1 -2 (12 , 6)
2 12 (13 , 7)
3 6 (14 , 8)
4 0 (15 , 9)
5 -6 (16 , 9)
6 8 (17 , 10)
7 2 (18 , 11)
8 -4 (19 , 11)
9 10 (20 , 12
Aturan :

1. Jika Pk bernilai positif, maka tambahkan hasilnya dengan B dan nilai X


dan Y ditambah 1.

2. Jika Pk bernilai negatif, maka tambahkan hasilnya dengan A dan nilai X


ditambah 1, sedangkan Y ditambah 0 (tetap).

3. Putaran dihentikan jika koordinat X dan Y sudah mencapai batas Akhir,


dalam kasusu ini (20 , 12).
Berikut ini adalah hasil garisnya .
HASIL
Hasil dari program diatas adalah
TERIMA KASIH

Anda mungkin juga menyukai