Contoh Format Tugas Makalah
Contoh Format Tugas Makalah
+1, y
+%&')
(f d)%t*en
move to +,
el-e
move to ,
15
Dari gambar diatas untuk memilih *) atau ) $aitu dengan menghitung di
mana sisi garis / terleta! y = dy/dx * x + b
Oleh karena itu 1
F(x,y) = dy*x dx*y + b*dx = 0
0 tepat di garis
%(!,y) A N0 di ba$ah garis
O0 di atas garis
<ika G maka 1
dnew = %(!
p
#2,y
p
#0.&) = dy"(!
p
#2) ' d!"(y
p
#0.&) # $"d!
(d = dnew ' d = dy
dnew = d # (d = d # dy
<ika ?G maka 1
d
new
= %(!
p
#2,y
p
#1.&) = dy"(!
p
#2) 'd!"(y
p
#1.&) # $"d!
(d = dnew ' d = dy ' d!
dnew = d # (d = d # dy ' d!
1D
5 Rasterization (ol$gon
Langkah pertama rasteri'ation poligon adalah untuk menentukan apakah poligon
ba&k *a&ing atau *ront *a&ing .turan untuk menetukan *ragmen yang dihasilkan oleh
rasteri'ation disebut titik sampling Pragmen pusat yang berada di dalam poligon ini
diproduksi ole rasteri'ation 2erlakuan khusus diberikan kepada sebuah *ragmen yang
pusatnya terletak di tepi batas poligon
2oligon stippling beker!a dengan banyak &ara yang sama sebagai garis stippling#
maskinh *ragmen tertentu yang dihasilkan oleh rasteri'ation sehingga mereka tidak
dikirim ke tahap GL berikutnya (al ini terlepas dari keadaan poligon antialiasing
2olygon Con,e"
%ntuk poligon &on,e" pertama yang harus dilakukan adalah &ari ,erte" atas dan
,erte" ba$ah Kemudian list edge yang berada di sepan!ang sisi kiri dan kanan
1E
%ntuk setiap s&an line dari atas ke ba$ah# &ari !arak antara endpoint kiri dan
kanan 3"l#"r4 kemudian isi pi"elnya
2oligon Con&a,e
.da tiga pendekatan yang bisa digunakan ;ang pertama adalah dengan e,en-
odd rule yang mana untuk setiap s&an linenya kita perlu men&ari semua s&an line
atau interseksi poligon Kemudian urutkan dari kiri ke kanan dan mengisikan
rentang interior diantara interseksi 2endekatan keduua adalah dengan $inding
rule yang berorientasi garis
2erbedaan e,en-odd rule dan $inding rule 1
2erbedaan hanya terdapat di interseksi polygon itu sendiri
> Resterization Antialiasing
.ntialiasing poligon merester poligon dengan memproduksi sebuah *regmen
dimanapun interior poligon persegi berpotongan )ebuah datum yang terkait
18
ditugaskan untuk *ragmen dengan mengintegrasikan nilai datum yang sama dengan
$ilayah interse&t dari *ragmen persegi dengan interior poligon dan membagi nilai
integrasi dengan $ilayah interse&t %ntuk *ragmen persegi berada sepenuhnya di
dalam poligon ?ilai suatu datum di pusat *ragmen mungkin digunakan sebagai
pengganti mengintegrasikan nilai seluruh *ragmen
.da dua algoritma yaitu .lgoritma 0resenham 3.liased-line4 yang mana hanya
satu point di setiap kolom dan .lgoritma Grupta-)proull 3.ntialiased-line4 yang
mana intensitas point tergantung oleh !angkauan garis piksel
/)T0+) HI++)* S,R=AC) R)/0<A-
3 Algoritma A Buffer
.lgoritma Depth 0u**er mempergunakan image spa&e sebagai dasar proses
perhitungan tampak atau tidaknya permukaan suatu ob!ek .lgoritma ini mengu!i
tampak atau tidaknya setiap pi"el pada suatu permukaan ob!ek yang satu terhadap
1F
permukaan ob!ek yang lain dan harga permukaan yang paling dekat dengan bidang
pandang yang akan tersimpan dalam Depth 0u**er dan selan!utnya harga intensitas
$arna dari permukaan pi"el tersebut disimpan di dalam +e*resh 0u**er atau algoritma
Depth 0u**er ini akan menampilkan bagian permukaan ob!ek berdasarkan posisi '
yang paling dekat dengan bidang pandang dengan proyeksi orthogonal atau proyeksi
tegak lurus
2ada gambar 1 memperlihatkan tiga permukaan bidang pada berbagai kedalaman
' dengan posisi 3"#y4 yang sama untuk setiap permukaan )edangkan pada gambar 5
dapat dilihat bah$a permukaan )1 mempunyai harga ' terke&il pada posisi 3"#y4
50
sehingga harga ' disimpan pada Depth 0u**er dan harga intensitas )1 pada 3"#y4
disimpan pada +e*resh 0u**er <adi# algoritma ini membutuhkan dua bu**er untuk
implementasinya
Langkah-langkah algoritma )ept* +u,,er adalah sebagai berikut
1 @nisialisasi Depth 0u**er dan re*resh 0u**er sehingga untuk semua koordinat
posisi 3"#y4 depth 3"#y4 A 0 dan re*resh 3"#y4 A ba&kground
5 %ntuk setiap posisi pada permukaan# bandingkan harga kedalaman terhadap
harga yang tersimpan pada Depth 0u**er untuk menentukan penampakan
a (itung harga ' untuk setiap posisi 3"#y4 pada permukaan
b !ika 'Ndepth 3"#y4# masukkan depth 3"#y4 A ' dan re*resh 3"#y4 A i# dimana i
adalah harga dari intensitas pada posisi 3"#y4 di atas permukaan
2ada langkah terakhir# !ika ' lebih ke&il dari harga Depth 0u**er untuk posisi
tersebut# titik tidak tampak Depth 0u**er berisi harga ' untuk permukaan yang tampak
dan +e*resh 0u**er berisi hanya harga intensitas
.lur proses (idden )ur*a&e +emo,al dengan menggunakan algoritma Q bu**er
adalah sebagai berikut
-enginisialisasi isi 0u**er
-elakukan u!i penampakan keseluruhan bagian permukaan setiap link mulai
dari a$al link hingga akhir link sebanyak satu kali
-emindahkanMmenampilkan seluruh isi Q bu**er
51
4 Algoritma Scan;-ine
.lgoritma )&an-Line digunakan untuk meme&ahkan masalah penggunaan
memori yang besar dengan satu baris s&an untuk memproses semua permukaan ob!ek
.lgoritma melakukan s&an dengan arah sumbu y sehingga memotong semua
permukaan bidang dengan arah sumbu " dan ' dan membuang garis-garis yang
tersembunyi 2ada setiap posisi sepan!ang baris s&an# perhitungan kedalaman dibuat
untuk setiap permukaan untuk menentukan mana yang terdekat dari bidang pandang
Ketika permukaan yang tampak sudah ditentukan# harga intensity dimasukkan ke
dalam bu**er
55
.lur proses algoritma )&an Line se&ara garis besar adalah sebagai berikut
-enginisialisasi 0u**er se&ara berulang
-elakukan s&an baris yang diperlukan 0erpindah dari a$al link ke akhir link
sebanyak ;maks C ;mins
-emindahkanMmenampilkan isi bu**er satu baris se&ara berulang
53
5 Analisis
Dari segi penggunaan memori# untuk algoritma ' bu**er# memori yang diperlukan
adalah sebesar bidang layar yang akan digambar dikali dengan besar ,ariabel
kedalaman ' dan $arna )ebagai &ontoh# proses (iddden )ur*a&e remo,eal dilakukan
pada layar dengan bidang berukuran D>0 " D80 pi"el %ntuk ' bu**er diperlukan daerah
pada memori dengan ukuran D>0 9 D80 R D byte sama dengan 18>3500 byte 31#8 -04
)edangkan untuk s&an line memori yang diperlukan adalah sebesar !umlah kolom
bidang layar yang akan digambar dikalikan dengan besar ,ariabel kedalaman dan
$arna %ntuk bu**er s&an depth hanya diperlukan D>0RD A 38>0 byte 33#E5 Kb4
Dengan dimensi yang sama maka dibutuhkan D>0R> byte 3ukuran tiap integer ,ariabel
$arna4 sama dengan D>00 byte 35#5 Kb4 <adi total hanya membutuhkan D>00 Kb
3D#554
%ntuk analisis perbandingan ke&epatan dapat dilihat pada tabl di ba$ah ini
+A=TAR (,STAKA
http1MM&aig&sn&tuedut$M&ourseMCG500EMslidesMrasterpd*
http1MM$$$openglorgMdo&umentationMspe&sM,ersion11Mglspe&11Mnode>1html
http1MMre*eren&e*indtarget&omMsear&hM(iddenS50sur*a&eS50determinationM
5>
http1MM&s*iteduMT$dsM&lassesMgraphi&sM+asteri'eMrasteri'eMrasteri'ehtml
http1MMen$ikipediaorgM$ikiM+asterisation
http1MMmeilgra*i&o$ordpress&omM5010M10M30M&omputer-graphi&s-&lipping-algoritmM
+i!tat Kuliah %rafi!a Komputer BAB I< Clipping
55