1. Algoritma DDA
n = 1
1. Tentukan 2 buah titik.
A = (4, 7) B = (-6, 12)
2. Titik awal = (4, 7) dan titik akhir = (-6, 12)
3. Hitung DX dan DY.
DX= X1 – X0 dan DY = Y1 – Y0
DX = -6 – 4 = -10
DX = 12 – 7 = 5
4. Bandingkan harga mutlak |DX| dan harga mutlak |DY|
Jika |DX| > |DY|
10 > 5, maka r = |DX| = 10
5. Hitung penambahan koordinat pixel, yaitu:
Xr =dx/r = -10/10 = -1
Yr = dy/r =5/10 = 0.5
6. Koordinat selanjutnya, yaitu:
X1 = X0 + Xr = 4 + (-1) = 3
Y1 = Y0 + Yr = 7 + 0.5 = 7.5
(X1, Y1) = (3, 7.5)
n = 2
1. Tentukan 2 buah titik.
A = (3, 7.5) B = (-6, 12)
2. Titik awal = (3, 7.5) dan titik akhir = (-6, 12)
3. Hitung DX dan DY.
DX = -6 – 3 = -9
DY = 12 – 7.5 = 4.5
4. Bandingkan harga mutlak |DX| dan harga mutlak |DY|
Jika |DX| > |DY|
9 > 4.5, maka r = |DX| = 9
5. Hitung penambahan koordinat pixel, yaitu:
Xr =dx/r = -9/9 = -1
Yr = dy/r = 4.5/9 = 0.5
6. Koordinat selanjutnya, yaitu:
X2 = X1 + Xr = 3 + (-1) = 2
Y2 = Y1 + Yr = 7.5 + 0.5 = 8
(X2, Y2) = (2, 8)
n = 3
1. Tentukan 2 buah titik.
A = (2, 8) B = (-6, 12)
2. Titik awal = (2, 8) dan titik akhir = (-6, 12)
3. Hitung DX dan DY.
DX = -6 – 2 = -8
DY = 12 – 8 = 4
4. Bandingkan harga mutlak |DX| dan harga mutlak |DY|
Jika |DX| > |DY|
8 > 4, maka r = |DX| = 8
5. Hitung penambahan koordinat pixel, yaitu:
Xr = dx/r = -8/8 = -1
Yr = dy/r = 4/8 = 0.5
6. Koordinat selanjutnya, yaitu:
X3 = X2 + Xr = 2 + (-1) = 1
Y3 = Y2 + Yr = 8 + 0.5 = 8.5
(X3, Y3) = (1, 8.5)
n = 4
1. Tentukan 2 buah titik.
A = (1, 8.5) B = (-6, 12)
2. Titik awal = (1, 8.5) dan titik akhir = (-6, 12)
3. Hitung DX dan DY.
DX = -6 – 1 = -7
DY = 12 – 8.5 = 3.5
4. Bandingkan harga mutlak |DX| dan harga mutlak |DY|
Jika |DX| > |DY|
7 > 3.5, maka r = |DX| = 7
5. Hitung penambahan koordinat pixel, yaitu:
Xr = dx/r = -7/7 = -1
Yr = dy/r = 3.5/7 = 0.5
6. Koordinat selanjutnya, yaitu:
X4 = X3 + Xr = 1 + (-1) = 0
Y4 = Y3 + Yr = 8.5 + 0.5 = 9
(X4, Y4) = (0, 9)
n = 5
1. Tentukan 2 buah titik.
A = (0, 9) B = (-6, 12)
2. Titik awal = (0, 9) dan titik akhir = (-6, 12)
3. Hitung DX dan DY.
DX = -6 – 0 = -6
DY = 12 – 9 = 3
4. Bandingkan harga mutlak |DX| dan harga mutlak |DY|
Jika |DX| > |DY|
6 > 3, maka r = |DX| = 6
5. Hitung penambahan koordinat pixel, yaitu:
Xr = dx/r =-6/6 = -1
Yr = dy/r = 3/6 = 0.5
6. Koordinat selanjutnya, yaitu:
X5 = X4 + Xr = 0 + (-1) = -1
Y5 = Y4 + Yr = 9 + 0.5 = 9.5
(X5, Y5) = (-1, 9.5)
n = 6
1. Tentukan 2 buah titik.
A = (-1, 9.5) B = (-6, 12)
2. Titik awal= (-1, 9.5) dan titik akhir= (-6, 12)
3. Hitung DX dan DY.
DX = -6 – (-1) = -5
DY = 12 – 9.5 = 2.5
4. Bandingkan harga mutlak |DX| dan harga mutlak |DY|
Jika |DX| > |DY|
5 > 2.5, maka r = |DX| = 5
5. Hitung penambahan koordinat pixel, yaitu:
Xr = dx/r = -5/5 = -1
Yr = dy/r = 2.5/5 = 0.5
6. Koordinat selanjutnya, yaitu:
X6 = X5 + Xr =-1 + (-1) = -2
Y6 = Y5 + Yr = 9.5 + 0.5 = 10
(X6, Y6) = (-2, 10)
n = 7
1. Tentukan 2 buah titik.
A = (-2, 10) B = (-6, 12)
2. Titik awal = (-2, 10) dan titik akhir = (-6, 12)
3. Hitung DX dan DY.
DX = -6 – (-2) = -4
DY= 12 – 10 = 2
4. Bandingkan harga mutlak |DX| dan harga mutlak |DY|
Jika |DX| > |DY|
4 > 2, maka r = |DX| = 4
5. Hitung penambahan koordinat pixel, yaitu:
Xr = dx/r = -4/4 = -1
Yr = dy/r = 2/4 = 0.5
6. Koordinat selanjutnya, yaitu:
X7 = X6 + Xr =-2 + (-1) = -3
Y7 = Y6 + Yr = 10 + 0.5 = 10.5
(X7, Y7) = (-3, 10.5)
n = 8
1. Tentukan 2 buah titik.
A = (-3, 10.5) B = (-6, 12)
2. Titik awal = (-3, 10.5) dan titik akhir = (-6, 12)
3. Hitung DX dan DY.
DX = -6 – (-3) = -3
DY = 12 – 10.5 = 1.5
4. Bandingkan harga mutlak |DX| dan harga mutlak |DY|
Jika |DX| > |DY|
3 > 1.5, maka r = |DX| = 3
5. Hitung penambahan koordinat pixel, yaitu:
Xr = dx/r = -3/3 = -1
Yr = dy/r = 1.5/3 = 0.5
6. Koordinat selanjutnya, yaitu:
X8 = X7 + Xr =-3 + (-1) = -4
Y8 = Y7 + Yr = 10.5 + 0.5 = 11
(X8, Y8) = (-4, 11)
n = 9
1. Tentukan 2 buah titik.
A = (-4, 11) B = (-6, 12)
2. Titik awal = (-4, 11) dan titik akhir = (-6, 12)
3. Hitung DX dan DY.
DX = -6 – (-4) = -2
DY = 12 – 11 = 1
4. Bandingkan harga mutlak |DX| dan harga mutlak |DY|
Jika |DX| > |DY|
2 > 1, maka r = |DX| = 2
5. Hitung penambahan koordinat pixel, yaitu:
Xr = dx/r = -2/2 = -1
Yr = dy/r = 1/2 = 0.5
6. Koordinat selanjutnya, yaitu:
X9 = X8 + Xr =-4 + (-1) = -5
Y9 = Y8 + Yr = 11 + 0.5 = 11.5
(X9, Y9) = (-5, 11.5)
n = 10
1. Tentukan 2 buah titik.
A = (-5, 11.5) B = (-6, 12)
2. Titik awal = (-5, 11.5) dan titik akhir = (-6, 12)
3. Hitung DX dan DY.
DX = -6 – (-5) = -1
DY= 12 – 11.5 = 0.5
4. Bandingkan harga mutlak |DX| dan harga mutlak |DY|
Jika |DX| > |DY|
1 > 0.5, maka r = |DX| = 1
5. Hitung penambahan koordinat pixel, yaitu:
Xr = dx/r = -1/1 = -1
Yr = dy/r = 0.5/1 = 0.5
6. Koordinat selanjutnya, yaitu:
X10 = X9 + Xr =-5 + (-1) = -6
Y10 = Y9 + Yr = 11.5 + 0.5 = 12
(X10, Y10) = (-6, 12)
Dan berikut adalah grafik algoritma DDA dari 2 buah titik.
A = (4, 7) dan B = (-6, 12):
Algoritma Bressenham (untuk dx<dy)
1. Tentukan 2 titik yang akan dihubungkan dalam pembentukan garis.
(4, 7) (-6, 12)
2. Tentukan salah satu titik disebelah kiri sebagai titik awal, yaitu (X0, Y0) dan titik lainnya sebagai titik akhir (X1, Y1)
(X1, Y1) = (4,7) (X2,Y2) = (-6, 12)
3. Hitung Dx=x2-x1, Dy=y2-y1, d1=2*Dy dan d2=2*Dy - 2*Dx, e=d1-dy, x=x1, y=y1
DX = X2 – X1 Dy = y2 - y1
= (-6) – 4 = 12 - 7
= -10 = 5
D1=2*Dy D2= 2*Dy – 2*Dx
= 2 * 5 = 2*5 – 2*(-10)
= 10 = 10 – (-10)
= 20
E= d1-dy x= x1 y= y1
= 10-5 = 4 = 7
= 5
4. Gambar pixel di (x,y)
5. Untuk setiap e>=0 hitung e=e+d2 dan x=x+1
Jika tidak hitung e=e+d1 dan x=x
e >= 0 x = x +1
e = e + d2 = 4 + 1
= 5 + 20 = 5
= 25
6. Hitung y = y+1
= 7 + 1
= 8
7. Jika y>=y2 stop, jika tidak kembali ke langkah 4
y > y2
8 >= 12
kembali ke langkah 4
4. Gambar pixel di (x,y)
5. Untuk setiap e>=0 hitung e=e+d2 dan x=x+1
Jika tidak hitung e=e+d1 dan x=x
e >= 0 x = x +1
e= e + d2 = 4 + 1
= 5 + 20 = 5
= 25
6. Hitung y= y+1
= 8 + 1
= 9
7. Jika y>=y2 stop, jika tidak kembali ke langkah 4
y > y2
9 >= 12
kembali ke langkah 4
4. Gambar pixel di (x,y)
5. Untuk setiap e>=0 hitung e=e+d2 dan x=x+1
Jika tidak hitung e=e+d1 dan x=x
e >= 0 x = x +1
e= e + d2 = 4 + 1
= 5 + 20 = 5
= 25
6. Hitung y= y+1
= 9 + 1
= 10
7. Jika y>=y2 stop, jika tidak kembali ke langkah 4
y > y2
10 >= 12
kembali ke langkah 4
. Gambar pixel di (x,y)
5
5. Untuk setiap e>=0 hitung e=e+d2 dan x=x+1
Jika tidak hitung e=e+d1 dan x=x
e >= 0 x = x +1
e= e + d2 = 4 + 1
= 5 + 20 = 5
= 25
6. Hitung y= y+1
= 10 + 1
= 11
7. Jika y>=y2 stop, jika tidak kembali ke langkah 4
y > y2
11 >= 12
kembali ke langkah 4
4. Gambar pixel di (x,y)
5. Untuk setiap e>=0 hitung e=e+d2 dan x=x+1
Jika tidak hitung e=e+d1 dan x=x
e >= 0 x = x +1
e= e + d2 = 4 + 1
= 5 + 20 = 5
= 25
6. Hitung y= y+1
= 11 + 1
= 12
7. Jika y>=y2 stop, jika tidak kembali ke langkah 4
y > y2
12 >= 12 stop