TUGAS 5 ALGORITMA DAN FLOWCHART BRESENHAM, DDA, DAN MIDPOINT

Untuk memenuhi salah satu tugas mata kuliah Grafika Komputer semester IV

Dosen Pembimbing: Muhammad Faisal, M.T

Oleh: Rizky Izatul L.R (10650028) Kelas : A

JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI MAULANA MALIK IBRAHIM MALANG 2012

Untuk setiap Xk sepanjang jalur garis.yk+1). nilai y kedua dan seterusnya.2dx dan 2dy-2dx. Tentukan dua titik yang akan dihubungkan dalam pembentukan garis.ALGORITMA DAN FLOWCHART 1. Perbaikan algoritma ini ternyata tidak menghasilkan perbaikan yang cukup siginifikan. sehingga hanya titik y pertama yang perlu dilakukan operasi secara lengkap.y0) dan titik lainnya sebgai titik akhir (x1. terutama pada penambahan dan pengurangan. yaitu (x 0. yk). sampai x = x1 dan y = y1. maka titik selanjutnya adalah (xk+1.dy.  Langkah-langkah: 1. Algoritma Bressenham Tujuan dari algoritma Bressenham ini adalah untuk menghindari pembulatan nilai seperti pada algoritma DDA. 4. Hitung parameter P0 = 2dy-dx 5. Ulangi langkah no 5 untuk menentukan posisi pixel selanjutnya. Tentukan salah satu titik di sebelah kiri sebagai titik awal.y1). dan Pk+1 = Pk+2dy-2dx 6. Perbaikan berikutnya dilakukan dengan cara menghilangkan operasi bilangan riel dengan operasi bilangan integer. Hitung dx. dimulai dengan k=0. Operasi bilangan integer jauh lebih cepat dibandingkan dengan operasi bilangan riel. 3. 2.  Flowchart . Pada algoritma bresenham.bila pk <0. dan Pk+1 = Pk+2dybila tidak. dihitung dari nilai y sebelumnya.>k+1.

x<x1. suatu garis dapat . yk+1). Sehingga untuk memperoleh suatu tampilan dengan ketelitian tinggi. Pada garis lurus.yk).y1). turunan pertama dari x dan y adalah konstanta. Algoritma DDA Algoritma DDA bekerja bekerja atas dasar penambahan nilai x dan nilai y.y0) dan titik lainnya sebagai titik akhir(x1.x++ maka titik selanjutnya adalah (xk+1. dan pk+1=pk+2dy2dx Keluaran titik Next x Finish 2.start Tentukan salah satu titik di sebelah kiri sebagai titik awal yaitu(x0.dy. dan pk+1=pk+2dy YES pk < 0 NO maka titik selanjutnya adalah(xk+1. Hitung dx.2dx dan 2dy2dx Hitung parameter :p0=2dydx For x=x0.

dibangkitkan dengan menambah nilai x dan y masing-masing sebesar eΔx dan eΔy. Tentukan yang menjadi titik awal (X0. 8. Posisi pixel ditentukan dengan pembulatan nilai koordinat tersebut. Bandingkan Abs(Dx) dan Abs(Dy)Jika Abs(Dx) > Abs(Dy) makaSteps = Abs(Dx) bila tidak Steps = Abs(Dy) 5. Hitung Dx dan DyDx = X1-X0 dan Dy = Y1 – Y0 4. Ulangi langkah 6 dan 7 untuk posisi selanjutnya sampai X = X1. Tentukan 2 buah titik. 6. karenanya pendekatan yang mungkin dilakukan adalah berdasarkan piksel-piksel yang bisa dialamati/dicapai atau melalui penambahan atau pengurangan nilai x dan y dengan suatu besaran dan membulatkannya ke nilai integer terdekat. 2.Y0) dan titik akhir (X1. Y = Y1  Flowchart .Kondisi ideal ini sukar dicapai. 3. Koordint selanjutnya. dengan besaran dengan nilai yang sangat kecil. Hitung penambahan koordinat pixel.Y1). yaituX+X_incrementY+Y_increment 7.  Langkah-langkah 1. danY_increment = dy/steps. yaitu:X_increment = dx/steps.

dan y_increment=dy/langkah For x=x0.y1) Hitung dx=x1x0.x++ Koordinat selanjutnya (x+x_increment. dan dy= y1y0 Absolut dari dy No Absolut dx>absolut dy Yes Absolut dari dx Hitung penambahan koordinat pixel yaitu x_increment=dx/langkah. y+y_increment) Posisi pixel pada layar ditentukan dengan pembulatan nilai koordinat tersebut Keluaran titik Next Finish .START Tentukan salah satu titik sebagai awal(x0.x<x1.y0) dan titik akhir(x1.

y) pada garis melingkar dari lingkaran dengan titik pusat (xc. Bressenham mengembangkan generator lingkaran yang cukup efisien.  Langkah langkah untuk membentuk lingkaran algoritma Circle Midpoint: 1. Ulangi langkah ke-3 sampai 5. maka titik selanjutnya adalah (xk+i. yaitu oktan kedua dari x=0 ke x=R/Ö2. Algoritma MidPoint Algoritma Lingkaran Midpoint juga disebut algoritma lingkaran Bressenham.3. Hitung nilai dari parameter 3. maka selanjutnya adalah 4. Gerakkan setiap posisi pixel(x.yk) dan Pk+i=Pk+2xk+i+1  Bila tidak. Algoritma yang digunakan membentuk semua titik berdasarkan titik pusat dengan penambahan semua jalur sekeliling lingkaran. Algoritma ini diturunkan dari algoritma Midpoint untuk pembentukan garis. dan menggunakan CirclePoints untuk menampilkan titik dari seluruh lingkaran. Tentukan nilai awak k=0 untuk setiap posisi xk berlaku sebagai berikut:  Bila Pi<0.yc) kemudian diperoleh 2.yc) dan tentukan nilai koordinat: 6. Dalam hal ini hanya diperhatikan bagian 45’ dari suatu lingkaran. Tentukan titik simetris pada ketujuh oktan yang lain 5. Tentukan radius r dengan titik pusat lingkarang(xc. sehingga x>=y .

yc) kemudian diperoleh (x0.yk))dan Pk+1=Pk+2xk+1+1 maka selanjutnya adalah(xk+1. dan Pk+1=Pk+2xk+1+12yk+1 Tentukan titik simetris pada ketujuh oktan yang lain Gerakkan setiap posisi pixel(x.y0)=(0.yc) tentukan nilai koordinat: x=x+xc y=y+yc c c Next Keluaran titik Finish . Flowchart start Tentukan radius r dengan titk pusat lingkaran(xc.yk-1).x<y.y) pada garis melingkar dari lingkaran dengan titik pusat (xc.r) Hitung nilai dari parameter P0=5/4r For x=x0.x++ yes Bila Pk< 0 no titik selanjutnya adalah (xk+1.

Sign up to vote on this title
UsefulNot useful