Algoritma Bressenham
- Tentukan 2 titik yang akan dihubungkan dalam pembentuk garis.
- Tentukan salah satu titik disebelah kiri sebagai titik awal, yaitu (X0, Y0) dan titik lainnya sebagai titik akhir (X1, Y1)
- hitung Dx, Dy, 2DX dan 2Dy-2Dy
- Hitung parameter P0= 2Dy – 2Dx
- Untuk setiap X1 sepanjang jalur garis, dimulai dengan k=0,
- bila pk<0, makatitik selanjutnya adalah (Xk + 1, Yk) dan Pk+1 = Pk +2Dy
- bila tidak, maka titik selanjutnya adalah (Xk + 1, Yk +1) dan Pk+1 = Pk +2Dy – 2Dx
- Ulangi langkah no. 5 untuk menentukan posisi selanjutnya, sampai X=X1 dan Y=Y1
Contoh soal:
Diketahui
2 buah titik A(10,10) dan titik B(17,16) bila titik A sebagai titik
awal dan titik B sebagai titik akhir, maka buatlah garis yang
menghubungkan titik tersebut dengan menggunakan algoritma Bressenham
Jawab:
Periksa Xa dan Xb
Xa = 10 < Xb=17
Maka, X = Xa = 10
Y=Ya = 10
Xend = xa= 17
Ulangi selama x < xend
* K0:
x = x + 1 = 10 + 1 = 11
Periksa nilai p , dimana p = 5
y = y + 1 = 10 + 1 = 11
p = p + twodydx = 5 + (-2) = 3
* K1:
x = x + 1 = 11 + 1 = 12
Periksa nilai p, dimana p = 3
y = y +1 = 11 + 1 = 12
p = p + twodydx = 3 + (-2) = 1
* K2:
x = x + 1 = 12 + 1 = 13
Periksa nilai p, dimana p = 1
y = y +1 = 12 + 1 = 13
p = p + twodydx = 1 + (-2) = -1
* K3:
x = x + 1 = 13 + 1 = 14
Periksa nilai p, dimana p = -1
Nilai y tetap yaitu y=13
p = p + twody = (-1) + 12 = 11
* K4:
x = x + 1 = 14 + 1 = 15
Periksa nilai p, dimana p = 11
y = y +1 = 13 + 1 = 14
p = p + twodydx = 11 + (-2) = 9
* K5:
x = x + 1 = 15 + 1 = 16
Periksa nilai p, dimana p = 9
y = y +1 = 14 + 1 = 15
p = p + twodydx = 9 + (-2) = 7
* K6:
x = x + 1 = 16 + 1 = 17
Periksa nilai p, dimana p = 7
y = y +1 = 15 + 1 = 16
p = p + twodydx = 7 + (-2) = 5
Proses berhenti karena x = x1 dan y = y1
K
|
Pk
|
(Xk+1 , Yk+1)
|
-
|
-
|
10,10
|
0
|
3
|
11,11
|
1
|
1
|
12,12
|
2
|
-1
|
13,13
|
3
|
11
|
14,13
|
4
|
9
|
15,14
|
5
|
7
|
16,15
|
6
|
5
|
17,16
|