Anda di halaman 1dari 25

Analisis Algoritma Clipping, Rasterization, dan Hidden Surface Removal

Suci Istachotil Jannahh


5108100131
Kelas C
ABSTRAK
Di dalam makalah ini terdapat analisis algoritma-algoritma yang terbaik untuk
diimplementasikan dalam library OpenGL Dalam implementasinya untuk dapat
menampilkan suatu ob!ek dari titik-titik kordinat pi"el hingga men!adi ob!ek yang siap
untuk ditampilkan dengan sempurna# dalam artian kadangkala saat menampilkan ob!ek
tersebut ada sedikit masalah misalnya ob!ek tersebut berpotongan# koordinatnya melebihi
batas $indo$ %ntuk mengatasinya diperlukan algoritma &lpping# rasteri'ation# dan (idden
)ur*a&e +emo,e
-etode &lipping adalah metode yang digunakan untuk menentukan garis yang perlu
digambar atau tidak.lasan dilakukanna &lpping adalah untuk menghindari
perhitungankoordinat pi"el yang rumit dan interpolasi parameter Clpping dila!ua!n
se"elum proses rasterization Setelah proses clipping selan#utn$a dila!u!an proses
rasterization $ang mana dila!u!an peng!onversian suatu citra ve!tor !e citra
"itmap Sedang!an Hidden Surface Removal merupa!an suatu algoritma $ang
diguna!an untu! menghilang!an penampilan "agian $ang tertutup oleh o"#e! di
depann$a .pabila ada dua bidang yang berpotongan# !ika ob!ek tersebut ditampilkan biasa
tanpa menggunakan algoritma (idden sur*a&e remo,al maka bagian yang berpotongan itu
akan tidak kelihatan .lgoritma (idden )ur*a&e +emo,al ini perlu dilakukan untuk
menampilkan bidang perpotongan tersebut
/iap metode mempunya beberapa algoritma dan tentunya tiap algoritma memiliki
kelebihan dan kekurangan untuk dianalisis Contohnya pada algoritma &lpping didapatkan
1
Tugas Analisis Te!ni! Implementasi %rafi!a Komputer
algoritma Liang-0arsky yang terbaik karena ke&epatan $aktu yang e*isien dan !uga stabil
%ntuk metode rasteri'ation didapat algoritma -idpoint yang terbaik karena operasi
bilangan pada -idpoint dilakukan dengan &ara menghilangkan operasi bilangan riel dengan
bilangan integer yang mana bilangan integer !auh lebih &epat dibandingkan dengan operasi
bilangan riel Oleh karena itu# komputasi midpoint lebih &epat delapan kali pada pembuatan
garis lurus dan lima belas kali pada penggambaran lingkaran )edangkan pada metode
(idden )ur*a&e +emo,e# algoritma yang terbaik adalah algoritma s&an Line karena pada
algoritma ini menggunakan memori yang lebih sedikit dan dari segi ke&epatan !uga lebih
unggul
Kata !unci1 clipping, rasterization, hidden surface removal &hsr'
()*+AH,-,A*
2ada bidang ilmu Gra*ika Komputer tentunya tidak dapat terlepas dari pembuatan dan
manipulasi gambar 3,isual4 se&ara digital 0entuk sederhana dari gra*ika komputer adalah
gra*ika komputer 5D yang kemudian berkembang men!adi gra*ika komputer 3D#
pemrosesan &itra (image processing), dan pengenalan pola (pattern recognition). Gra*ika
komputer sering dikenal !uga dengan istilah ,isualisasi data
Dalam makalah ini akan di!elaskan tiga metode tentang optimasi atau &itra komputer
-etode-metode tersebut adalah &lipping# rasteri'ation# dan hidden sur*a&e remo,al Ketiga
metode ini tentu memiliki beberapa algoritma yang dapat dibandingkan algoritma mana
yang terbaik 2ada metode &lipping dilakukan pemrosesan untuk menentukan bagian mana
yang perlu ditampilkan dalam &lipping $indo$ Clipping perlu dila!u!an untu!
menghindari perhitungan !oordinat pi.el $ang rumit dan interpolasi parameter
Setelah itu dila!u!an proses rasterization untu! meng!onversi suatu citra ve!tor !e
citra "itmap 2ada langkah rasreti'ation ini# koordinat dalam bentuk geometri dikon,ersi
atau diubah kedalam *ragmen pada koordinat s&reen )etelah langkah ini# tidak ada lagi
kata 6poligon7 )emua geometri yang membentuknya ke dalam proses rasreti'ation adalah
dengan dinormalisasikan pembagian $ilayah 2ada proses ini perlu mengkon,ersi kontinu
5
3*loating pi"el4 geometri ke dalam diskrit 3integer4 )etelah itu ada metode (idden )ur*a&e
remo,al yang digunakan untuk menghilangkan penampilan bagian yang tertutup oleh ob!ek
yang didepannya .pabila ada dua bidang yang berpotongan# apabila ditampilkan biasa
tanpa menggunakan algoritma (idden sur*a&e remo,al maka bagian yang berpotongan itu
akan tidak kelihatan .lgoritma (idden )ur*a&e +emo,al ini perlu dilakukan untuk
menampilkan bidang perpotongan tersebut
Dari beberapa analisis nanti diharapkan mendapatkan algoritma terbaik dari masing-
masing metode yang nantinya akan digunakan untuk pengimplementasian ke dalam library
OpenGL
/)T0+) C-I((I*%
.da beberapa teknik yang dapat digunakan untuk melakukan proses &lipping#
diantaranya adalah
1 8erte" Clipping
%ntuk menentukan letak suatu titik di dalam &lipping $indo$ dapat digunakan
rumus
9min : " : 9ma"
;min : y : ;ma"
Dimana 9min# ;min# 9ma"# ;ma" merupakan batas &lip $indo$ untuk &lipping
$indo$ yang berbentuk persegi empat dengan posisi standar Kedua kondisi di atas
harus terpenuhi agar teknik ini dapat di!alankan <ika salah satu tidak terpenuhi
ma!a titi! terse"ut tida! "erada dalam clipping 1indo1
Contoh !asus 2
Terdapat dua "uah titi!, $aitu (3&4,4' dan (4&5,6' dengan 7min 8 3, 7ma. 8 9,
:min 8 3, dan :ma. 8 9
3
Dari gambar di atas# dapat dilihat bah$a titik 25 berada diluar area Clipping =indo$
karena titik 25 !oordinat $;n$a mele"ihi :ma. dari clipping 1indo1 sehingga
titi! (4 tida! a!an ditampil!an
-etode Clipping titik ini dapat diaplikasikan pada s&ene yang menampilkan
ledakan atau per&ikan air pada gelombang laut yang dibuat model dengan
mendistribusikan beberapa partikel
5 Line Clipping
Line &lipping atau &lipping garis diproses dengan inside-outside test dengan
memeriksa endpoint dari garis tersebut 0erdasarkan test tersebut garis dapat
dikategorikan men!adi empat !enis
>
?ama Kondisi
@n,isible 3garis 14 /idak keliatan# terletak di luar clipping window
<isi"le &garis 4' /erletak di dalam clipping window
Half partial &garis 5' /erpotong sebagian oleh clipping window
=ull partial &garis >' /erpotong penuh oleh clipping window
%ntuk garis yang invisible dan visible tida! perlu dila!u!an a!si clipping !arena
pada !ondisi invisible, garis tida! perlu ditampil!an sedang!an pada !ondisi
visible garis "isa langsung ditampil!an ,ntu! segmen garis dengan endpoint
&.3,$3' dan &.4,$4' serta !eduan$a terleta! di luar clipping window memili!i
persamaan,
" A "1 B u3"5 C "14
y A "1 B u3"5 C "14
0 ? u ? 3
(ersamaan terse"ut dapat diguna!an untu! mengenali nilaiparameter u untu!
!oordinat pemotongan dengan "atas clipping 1indo1
Secara umum algoritma line clipping dapat digam"ar!an se"agai "eri!ut,
5
Baca garis
Baca Clipping
Window
Invisible
Cek endpoint
yes
Visible
Tidak
Line Clipping
Gambar Garis
Tidak
Ya
D
.da beberapa algoritma dalam melakukan teknik line &lipping# diantaranya
adalah sebagai berikut Cohen C )utherland# Liang C 0arsky# Cyrus C 0e&k# dan
?i&holl C lee C ?i&holl Dan algoritma yang paling terkenal adalah algoritma Cohen-
)utherland dimana setiap endpoint atau titik u!ung dari garis direpresentasikan ke
dalam empat digit angka biner yang disebut region &ode dan Liang-0arsky
/etode Cohen;Sutherland
2ada metode Cohen-)utherland masing-masing digit tersebut akan menentukan
posisi titik relati* terhadap batas &lipping yang berbentuk segiempat %ntuk lebih
!elasnya dapat dilihat pada gambar dan tabel di ba$ah ini
> 5 4 3
@ @ @ @
0it ke-1 1 region Kiri 3L4
0it ke-5 1 region Kanan 3+4
0it ke-3 1 region 0a$ah 304
0it ke-> 1 region .tas 3/4
0it dengan nilai 1 menandakan bah$a titik berada pada region yang bersangkutan
<ika tidak maka diset nilai 0
E
Algoritma -iang;Bars!$
.lgoritma ini menggunakan persamaan parameter garis dan gambaran
pertidaksamaan dari range &lipping bo" untuk menentukan titik temu antara garis dan
&lipping bo" Kita harus melakukan pengu!ian sebanyak mungkin sebelum
menghitung interseksi garis -isalnya bentuk parameter biasanya garis lurus
Dan titik akan berada di &lipping $indo$ !ika
dan
Dinyatakan dalam empat pertidaksamaan
dimana
%ntuk perhitungannya adalah sebagai berikut
8
1 Garis paralel ke tepi &lipping $indo$ mempunyai batas p
k
= 0
5 <ika untuk setiap k# q
k
< 0# maka garis sepenuhnya berada di luar dan dapat
dieliminasi
3 0ila p
k
< 0 maka dihasilkan garis dari luar ke dalam &lipping $indo$ 0ila p
k
>
0 maka dihasilkan garis dari dalam ke luar
> %ntuk setiap p
k
tidak sama dengan 0 maka dihasilkan titik
interseksi
5 %ntuk setiap line# hitung u
1
dan u
2
%ntuk u
1
# lihat batas p
k
<0 3luardalam4
.mbil u
1
untuk men!adi yang terbesar di antara dan untuk u
2
# lihat batas
p
k
>0 3dalamluar4 .mbil u
2
untuk men!adi yang minimum dari
<ika u
1
>u
2
maka garis berada di luar dan ditolak
3 2olygon Clipping
2olygon merupakan bidang yang tersusun dari ,erteks 3titik sudut4 dan edge
3garis penghubung setiap ,erteks4 %ntuk dapat melakukan proses &lipping pada
polygon diperlukan algoritma yang lebih kompleks dari kedua teknik &lipping yang
telah di bahas sebelumnya )alah satunya adalah algortima )utherland-(odgman @de
dasarnya adalah memperhatikan edge pada setiap arah pandang# lalu &lipping polygon
dengan persamaan edge kemudian lakukan &lipping tersebut pada semua edge hingga
polygon terpotong sepenuhnya .da beberapa ketentuan dari algoritma )utherland-
(odgman# diantaranya adalah
1 2olygon dapat dipotong dengan setiap edge dari $indo$ sekali pada suatu
$aktu
5 8erte" yang telah dipotong akan disimpan untuk kemudian digunakan untuk
memotong edge yang masih ada
3 2erhatikan bah$a !umlah ,erte" biasanya berubah-ubah dan sering
bertambah
F
/)T0+) RAST)RIAATI0*
+asteri'ation adalah sebuah proses mengkon,ersi sebuah penggambaran ,erte"
men!adi sebuah penggambaran pi"el +asteri'ation !uga biasa disebut s&an &on,ersion
.lgoritma s&an &on,ersion menggunakan metode in&remental yang meman*aatkan
koherensi )ebuah metode in&remental menghitung sebuah nilai "aru dengan cepat dari
nilai lama, "u!an menghitung nilai "aru dari a1al $ang dapat memperlam"at
Koherensi dalam ruang atau 1a!tu adalah istilah $ang diguna!an untu!
menun#u!!an "ah1a "enda;"enda dide!atn$a &misaln$a pi.els' memili!i !ualitas
$ang mirip dengan o"#e!
10
2ada langkah rasreti'ation ini# koordinat dalam bentuk geometri dikon,ersi atau
diubah kedalam *ragmen pada koordinat s&reen )etelah langkah ini# tidak ada lagi kata
6poligon7 )emua geometri yang membentuknya ke dalam proses rasreti'ation adalah
dengan dinormalisasikan pembagian $ilayah 2ada proses ini perlu mengkon,ersi kontinu
3*loating pi"el4 geometri ke dalam diskrit 3integer4
3 Rasterization Titi!
Dalam keadaan de*ault# sebuah titik diraster dengan memotong kordinat 9$ dan
;$ 3ingat bah$a sub&ript menun!ukkan bah$a ini adalah " dan y clipping window4
ke integer .lamat ini 3"#y4# berdasarkan pada data terkait dengan simpul yang sesuai
ke titik# dikirim sebagai sebuah *ragmen tunggal untuk tahap per-*ragme dari GL
tersebut
G*ek dari lebar titik lebih dari 1 0 tergantung pada keadaan antialiasing titik <ika
antialiasing dnonakti*kan# lebar aktual ditentukan oleh pembulatan lebar dipasok ke
integer terdekat# kemudian mengapit ke titik lebar non-antialiasing maksimum
implementation-dependent -eskipun nilai implementation-dependent tidak dapatdi-
Huery# tapi harus tidak kurang dari lebar titik maksimum antialasing implementation-
11
dependent# dibulatkan ke nilai integer terdekat# serta tidak boleh kurang dari 1 <ika
lebarnya merupakan gan!il maka
2ersamaan di atas dihitung dari 9$ dan ;$ ,erte" dan grid persegi berlebar
gan!il berpusat di 3"#y4 mende*inisikan pusat *ragmen raster 3ingat bah$a pusat-pusat
*ragmen terletak pada nilai koordinat !endela hal*-integer4 <ika lebarnya genap maka
pusat titik adalah
2usat *ragmen raster adalah nilai koordinat hal*-integer $indo$ dalam persegi yang
berpusat di 3"#y4
6+asteri'ation non-antialiasing /anda silang menun!ukkan pusat *ragmen yang
dihasilkan oleh rasteri'ation untuk setiap titik yang terletak di $ilayang gelap Garis
putus-putus pada grid terletak pada koordinat hal*-integer7
15
<ika antialasing diakti*kan# maka rasteri'ation titik menghasilkan *ragmen untuk
setiap persegi *ragmen yang memotong daerah yang berada dalamlingkaran
berdiameter sama dengan lebar titik saat ini dan berpusat pada titik 39$# ;$4
2erhatikan gambar di ba$ah ini
2ada gambar di atas# titik hitam menun!ukkan titik yang akan diraster Daerah
gelap memiliki lebar yang ditentukan /anda " menun!ukkan pusat *ragmen yang
dihasilkan oleh rasteri'ation 2erhitungan *ragmen didasarkan pada bagian $ilayah
gelap yang menutupi persegi *ragmen
4 Rasterization -ine
Line segmen rasteri'ation dimulai dengan mengkarakterisasi segmen sebagai "-
ma!or dan y-ma!or )egmen garis "-ma!or mempunyai penurunan inter,al mendekati
I-1#1J dan semua segmen garis lainnya merupakan y-ma!or 3slope atau turunan
ditermain oleh endpoint segmen4 +asteri'ation ditentukan hanya untuk segmen "-
ma!or ke&uali dalam kasus dimana memodi*ikasi untuk segmen y-ma!or yang sudah
!elas
@delanya# GL menggunakan aturan Kdiamond-e"itL untuk menentukan *ragmen
yang diproduksi oleh rasteri'ation segmen garis %ntuk setiap *ragmen * dengan pusat
di $indo$ koordinat " dan y mendi*inisikan $ilayah berbentuk KdiamondL yang
merupakan interse&tion empat hal* plan
13
Ketika 2a dan 2b berada di pusat *ragmen# karakterissasi *ragmen mengurasi
untuk algoritma 0resenham dengan satu modi*ikasi (asil baris dalam deskripsi ini
adalah Ksetengah terbukaL .rtinya bah$a *ragmen terakhir 3sesuai dengan 2b4 tidak
ditarik @ni berati bah$a ketika proses raster segmen garis tersambung#endpoint akan
diproduksi hanya sekai bukan dua kali 3seperti yang ter!adi pada algoritma
0resenhamLs4
0eberapa algoritma yang digunakan
a .lgoritma ?ai,e
.lgoritma ini dimulai dari segmen garis pada koordinat dengan nilai bulat
3integer4 untuk endpoint
m = (y
2
- y
1
) (!
2
- !
1
)
y = m"!#$
5 operasi *loating-point per piksel
b .lgoritma DD. 3Digital Di**erential .naly'er4
1>
-isalkan po A 3"o#yo4 dan p1 A 3"1#y14 men!adi dua endpoint dari suatu garis
Kita akan mengasumsikan bah$a titik tersebutberada di koordinat "o#yo#"i#yi
Dimana intersep titik dari po# p1 adalah y A m" B b dan m A 3y5-y14M3"5-"14 dan
intersep y adalah bAy1-m"1
void Line_DDA(intx1, inty1, intx2, inty2)
{
floatdy= y2-y1;
floatdx = x2-x1;
floatm = dy/dx;
floaty = y1;
for (intx=x1; x<=x2; x++)
{
!tixel(x,ro!nd(y));
y += m;
"
"
& .lgoritma -idpoint
%ntuk menerapkan kriteria midpoint# kita hanya perlu menghitung
d = #($) = #(x

+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

Anda mungkin juga menyukai