Selasa, 30 Oktober 2018

Membuat Garis dan Lingkaran (Algoritma DDA dan Bresenham)

Assalamualaikum Wr.Wb.

Bertemu kembali dengan saya Fatmabangsa Manca JR, pada tugas project pada mata kuliah Komputer Grafik.

Project saya kali ini yaitu membuat sebuah garis dan lingkaran menggunakan Algoritma DDA dan Bresenham menggunakan bahasa pemrograman C++. Disini saya membagi menjadi 3 project, yaitu Project DDA (project ini berisi algoritma DDA yang mengimplementasikan algoritma untuk membuat sebuah garis), Project Bresenham (berisi algoritma Bresenham yang mengimplementasikan algoritma untuk membuat sebuah garis), dan Project Lingkaran (Project ini implementasi algoritma untuk membuat sebuah lingkaran dengan algorima Bresenham).

1. Membuat Garis dengan Algoritma DDA (Digital Differential Analyzer)  


DDA (Digital Differential Algoritma) adalah Algoritma yang digunakan untuk membuat sebuah garis berdasarkan dua titik, yaitu titik P1 dan P2 yang menentukan titik awal dan titik akhir. Pada garis  lurus tersebut, turunan pertama merupakan konstanta (nilainya tetap).

  • Keuntungan menggunakan algoritma DDA ini salah satunya tidak harus menghitung koordinat berdasarkan persamaan yang lengkap (menggunakan metode offset). 
  • Kerugian menggunakan algoritma DDA salah satunya adanya akumulasi round-off errors, sehingga garis akan melenceng dari garis lurus, selain itu operasi round-off juga menghabiskan banyak waktu. 
Langkah-langkah membuat Algoritma DDA :













Download Source Code membuat garis menggunakan Algoritma DDA
Download 


2. Membuat Garis dengan Algoritma Bresenham



Algoritma Bresenham adalah algoritma yang disusun oleh Bresenham yang tidak jauh beda dengan algoritma lainnya (Algoritma DDA).
Langkah-langkah membuat Algoritma Bresenham :



Download Source Code membuat garis menggunakan Algoritma Bresenham
Download  

3. Algoritma Membuat Lingkaran 


Langkah - langkah midpoint :

Input r dan titik tengah lingkaran (xc,yc) dan posisi start awal (x0,y0) = (0,r)
Hitung p awal  (p=1-r)
Untuk tiap xk, k=0, ulangi sampai x <= y
Jika pk < 0, (xk+1,yk), pk+1=pk+2xk+1+1
Jika tidak, (xk+1,yk-1), pk+1=pk+2(xk+1-yk+1) + 1
Tentukan titik simetri di tujuh oktan yang lain
Pindahkan semua titik pixel (x,y) ke posisi dengan pusat (xc,yc)
x=x+xc

y=y+yc

Download Source Code membuat lingkaran
Download  

IDE Pendukung :
Windows, menggunakan IDE berupa visual studio

Sekian dari postingan ini. Terimakasih telah mengunjungi project kami, jangan lupa untuk memberikan komentar atau kritik saran kepada kami. Semoga bermanfaat untuk kita semua.

Sampai jumpa pada postingan kami selanjutnya.

Wassalamualaikum Wr.Wb
Share:

1 komentar:

Copyright © Fatmabangsa Manca JR | Powered by Blogger
Design by SimpleWpThemes | Blogger Theme by NewBloggerThemes.com