(COHEN-SUTHERLAND)
Polygon adalah bentuk yang disusun dari serangkaian garis. Titik sudut dari polygon disebut vertex dan garis penyusun polygon disebut edge.
Algoritma Sutherland-Hodgman membandingkan setiap garis polygon
dengan garis window, dan akan menyimpan informasi garis polygon yang ada
di dalam garis window, dan juga titik perpotongan ketika garis polygon
melewati garis window. Ketika garis polygon tidak berpotongan dengan
garis window maka tampilkan polygon. ketika garis polygon ada di luar
garis window maka tidak tampilkan apa-apa, ketika garis polygon melewati
garis window(terjadi perpotongan garis) maka akan disimpan titik
potongnya dan vertex polygon yang ada di dalam.
Nilai dari verteks sebenarnya biasanya berubah setelah menemukan verteks perpotongannya, rumus :
Contoh :
Xmax | = | 14 | Xmin | = | 3 | |||
Ymax | = | 8 | Ymin | = | 2 | |||
Verteks A = (7,9) | Verteks C = (10,1) | |||||||
Verteks B = (15,5) | Verteks D = (2,5) | |||||||
Di bawah ini merupakan langkah-langkah untuk menentukan 8 titik perpotongan yang telah diuraikan di atas tadi.
Interseksi Bagian Bawah
Mencari titik potong antara C dan D (perpotongan edge pada sisi bawah window) C(10,1) D(2,5)
Maka lokasi perpotongan edge pada sisi bawah window antara C dan D adalah: (IX,IY) = ( 8,2 )
Mencari titik potong antara C dan B (perpotongan edge pada sisi bawah window) C(10,1) B(15,5)
Maka lokasi perpotongan pada edge pada sisi bawah window antara C dan B adalah:(IX,IY) = ( 11.25 , 2 )
Interseksi Bagian Kanan
Mencari titik potong antara B dan A (perpotongan edge pada sisi kanan pada window) B(15,5) A(7,9)
Maka lokasi perpotongan pada edge pada sisi kanan window antara B dan A adalah:(IX,IY) = (14,5.5)
Mencari titik potong antara B dan C (perpotongan edge pada sisi kanan window) B(15,5) C(10,1)
Maka lokasi perpotongan pada edge pada sisi kanan window antara B dan C adalah: (IX,IY) = ( 14, 4.2 )
Interseksi Bagian Atas
Mencari titik potong antara A dan D (perpotongan edge pada sisi atas window) A(7,9) D(2,5)
Maka lokasi perpotongan pada edge pada sisi atas window antara A dan D adalah:(IX,IY) = ( 5.75,8 )
Mencari titik potong antara A dan B (perpotongan edge pada sisi atas window) A(7,9) B(15,5)
Maka lokasi perpotongan pada edge pada sisi atas window antara A dan B adalah:( 9,8 )
Interseksi Bagian Kiri
Mencari titik potong antara D dan C (perpotongan edge pada sisi kiri window) D(2,5) C(10,1)
Maka lokasi perpotongan pada edge pada sisi kiri window antara D dan C adalah: (IX,IY) = ( 3,4.5 )
Mencari titik potong antara D dan A (perpotongan edge pada sisi kiri window) D(2,5) A(7,9)
Maka lokasi perpotongan pada edge pada sisi kiri window antara D dan A adalah: (IX, IY)=(3,5.8)
0 komentar:
Posting Komentar