Setelah melihat materi yang diberikan minggu pertama, ternyata dipertemuan ke dua yaitu minggu ke dua materinya mengenai algoritma..... Wah... PASSSSTIIII agak sulit nich... karena algoritma dalam materi Grafika Komputer ada Algoritma DDA dan Algoritma Bressenham.. Kira apa ya yang dimaksud dengan materi Algoritma DDA dan Algoritma Bressenham ini. Yuk sebelum kita masuk ke soal, lebih baik kita baca apa yang dimaksud dengan Algoritma DDA dan Algoritma Bressenham :
- Algoritma DDA
Langkah-langkah perhitungan Algoritma DDA sebagai berikut:
- Inputkan titik awal (x1, y1) dan titik akhir (x2, y2)
- Hitung dx dan dy dimana, dx = x2 – x1 dan dy = y2 – y1
- Jika |dx| > |dy| maka s = |dx|, selain itu s = |dy|
- Hitung absolut (Dx) dan absolut (Dy) serta steps (s)
- Hitung X_incrementnya = Dx/s dan Y_increment=Dy/s
- Hitung X1=X + X_increment dan Y1=Y+Y_increment
- Ulangi langkah 5 dan 6 sampai di titik akhir
Contoh soal Algoritma DDA
- 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 DDA
- Jawab:
- Titik awal disebut A (10,10) dan titik akhir (17,16). Misal X1=10 dan X2=17 ; Y1=10 dan Y2=16
- Dx= X2-X1=17-10=7 ; Dy=Y2-Y1=16-10=6,
- Absolut (Dx) = 7 ; Absolut (Dy)=6
- Absolut (Dx)>absolut (Dy) maka steps = Absolut (Dx)=7
- X_increment=Dx/s = 7/7 =1 ; Y_increment=Dy/s=6/7=0,86
- X2=X1+X_icrement= 10 + 1 = 11 ; Y2=Y1+Y_increment= 10 + 0,86 = 10,86 = 11
- Ulangi langkah 5 dan 6 sehingga sampai titik akhir yaitu (17,16)
- kalau dibuat tabel seperti ini
K | X | Y | X_incre | Y_incre |
---|---|---|---|---|
- | - | - | 10 | 10 |
0 | 11 | 10,857 | 11 | 10 |
1 | 12 | 11,71 | 12 | 11 |
2 | 13 | 12,57 | 13 | 12 |
3 | 14 | 13,43 | 14 | 13 |
4 | 15 | 14,28 | 15 | 13 |
5 | 16 | 15,14 | 16 | 15 |
6 | 17 | 16 | 17 | 16 |
- Algoritma Bressenham
Langkah-langkah perhitungan Algoritma Bressenham sebagai berikut:
Periksa Xa dan Xb
Contoh soal Algoritma Bressenhem
- 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 Bressenhem
- Jawab:
Dx=abs(Xb-Xa)=abs(17-10)=7
Dy=abs(Yb-Ya)=abs(16-10)=6
P=2*Dy-Dx=2*6-7=5
twoDy=2*Dy=2*6=12
twoDyDx=2*(Dy-Dx)=2*(6-7)=-2
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
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,115 |
6 | 5 | 17,16 |
2 comments:
link blognye gw post ye..
Silahkan.... semoga artikel diatas dapat membantu
Post a Comment