Bab Output Primitif.. Algoritma DDA (Digital Diferential Analer ) ===================================================================. Tentukan dua titik ang akan dihubungkan dalam pembentukan garis.. Tentukan salah satuna sebagai titik awal (, ) dan ang lain sebagai titik akhir (, ).. Hitung : d = dan d = 4. Tentukan step, dengan ketentuan berikut: - bila d > d maka step = d - bila tidak, maka step = d 5. Hitung penambahan koordinat piksel dengan persamaan: _inc = d / step _inc = d / step 6. Koordinat selanjutna : = + _inc = + _inc 7. Lakukan pembulatan u = Round(), = Round(), kemudian plot piksel (u, ) pada laar 8. Ulangi point 6 dan 7 untuk menentukan posisi piksel berikutna sampai = dan =. Contoh.4 Diketahui buah titik A(,) dan titik B(8,5) bila titik A sebagai titik awal dan titik B sebagai titik akhir, maka buatlah garis ang menghubungkan titik tersebut dengan menggunakan algoritma DDA. Jawab: Titik awal (, ) = A(,) dan Titik akhir (, ) = B(8,5) d = = 8 = 6 dan d = = 5 = 4 Karena: d > d, maka step = d = 6 _inc = d / step = 6/6 =
_inc = d / step = 4/6 =,67 ================================================= Iterasi ke-: (,) = (,) +_inc = + = +_inc = +,67 =,67 Koordinat selanjutna : (,) = (;,67) Pembulatan (;,67) (,). Gambar titik (,) dilaar ================================================= Iterasi ke-: (,) = (;,67) +_inc = + = 4 +_inc =,67 +,67 =,4 Koordinat selanjutna : (,) = (4;,4) Pembulatan (4;,4) (4,). Gambar titik (4,) dilaar ================================================= Iterasi ke-: (,) = (4;,4) A +_inc = 4 + = 5 A +_inc =,4 +,67=, Koordinat selanjutna : (,) = (5;,) Pembulatan (5;,) (5,). Gambar titik (5,) dilaar ================================================= Iterasi ke-4: (,) = (5;,) A +_inc = 5 + = 6 A +_inc =, +,67 =,68 Koordinat selanjutna : (,) = (6;,68) Pembulatan (6;,68) (6,4). Gambar titik (6,4) dilaar ================================================= Iterasi ke-5: (,) = (6;,68) A +_inc = 6 + = 7 A +_inc =,68 +,67 = 4,5 Koordinat selanjutna : (,) = (7; 4,5) Pembulatan (7; 4,5) (7,4). Gambar titik (7,4) dilaar
================================================= Iterasi ke-6: (,) = (7; 4,5) A +_inc = 7 + = 8 A +_inc = 4,5 +,67 = 5, Koordinat selanjutna : (,) = (8; 5,) Pembulatan (8; 5,) (8,5). Gambar titik (8,5) dilaar Karena = = 8, maka iterasi dihentikan, sehingga diperoleh titik-titik pembentuk garis sebagai berikut: (,), (,), (4,), (5,), (6,4), (7,4) dan (8,5). ================================================= Bila digambar pada raster graphics diperoleh gambar.6: 7 6 5 4 4 5 6 7 8 9 Gambar.6: Titik-titik pembentuk garis hasil perhitungan menggunakan algoritma DDA digambar pada raster graphics. Kelebihan Algoritma DDA dibanding Algoritma Brute Force Algoritma DDA lebih cepat dibanding dengan algoritma Brute Force dan baik digunakan untuk kemiringan garis m >. Kelemahan Algoritma DDA Prosedur untuk menggambar garis masih menggunakan fungsi pembulatan maupun, sehingga memerlukan waktu. ariabel, maupun m memerlukan bilangan real karena kemiringan merupakan nilai pecahan.
.. Algoritma Bressenham algoritma midpoint Bresenham (untuk kemiringan < m < ) adalah :. Tentukan dua titik ang akan dihubungkan dalam pembentukan garis.. Tentukan salah satu sebagai titik awal (, ) dan titik akhir (, ).. Hitung d, d, d dan d d 4. Hitung parameter : po = d d 5. Untuk setiap k sepanjang jalur garis, dimulai dengan k = - bila p k < maka titik selanjutna adalah: ( k +, k ) dan p k+ = p k + d - bila tidak, titik selanjutna adalah: ( k +, k +) dan p k+ = p k + d d 6. Ulangi nomor 5 untuk menentukan posisi piksel berikutna, sampai = dan =. Contoh.5 Diketahui buah titik A(,) dan titik B(8,5) bila titik A sebagai titik awal dan titik B sebagai titik akhir, maka buatlah garis ang menghubungkan titik tersebut dengan menggunakan algoritma Bressenham. Jawab: Titik awal (, ) = A(,) dan Titik akhir (, ) = B(8,5) d = = 8 = 6 dan d = = 5 = 4 m = d/ d = 4/6 ; kemiringan garis berada diantara dan : < m < d =.6 = ; d =.4 = 8 dan d d = 8 = 4 p o = d d = 8 6 = ================================================= Iterasi ke- ( k = ): Titik awal = (,) Po = >, maka titik selanjutna adalah = + = dan = + =, koordinat selanjutna : (,) p = p + d d = 4 =
================================================= Iterasi ke- ( k = ): Titik awal = (,) P = <, maka titik selanjutna adalah = + = 4 dan =, koordinat selanjutna : (4,) p = p + d = + 8 = 6 ================================================= Iterasi ke- ( k = ): Titik awal = (4,) P = 6 >, maka titik selanjutna adalah = 4 + = 5 dan = + =, koordinat selanjutna : (5,) p = p + d d = 6 4 = ================================================= Iterasi ke-4 ( k = ): Titik awal = (5,) P = >, maka titik selanjutna adalah = 5 + = 6 dan = + = 4, koordinat selanjutna : (6,4) p 4 = p + d d = 4 = ================================================= Iterasi ke-5 ( k = 4): Titik awal = (6,4) P = <, maka titik selanjutna adalah = 6 + = 7 dan = 4, koordinat selanjutna : (7,4) p 5 = p 4 + d = + 8 = 6 ================================================= Iterasi ke-6 ( k = 5): Titik awal = (7,4) P 5 = 6 >, maka titik selanjutna adalah = 7 + = 8 dan = 4 + = 5, koordinat selanjutna : (8,5) =================================================
Karena = = 8, maka iterasi dihentikan, sehingga diperoleh titik-titik penusun garis sebagai berikut: (,), (,), (4,), (5,), (6,4), (7,4) dan (8,5). Bila digambar pada raster graphics diperoleh Gambar.8: 7 6 5 4 4 5 6 7 8 9 Gambar.8: Titik-titik pembentuk garis dengan kemiringan < m <, hasil perhitungan menggunakan algoritma Bressenham ang digambar pada raster graphics..4 Lingkaran.4. Simetris Delapan Titik Pembuatan kura lingkaran dapat dilakukan dengan menentukan titik awal (,) ang terletak pada lingkaran, maka tujuh titik ang lain (ang terletak pada lingkaran juga) dapat ditentukan sebagai berikut : (,), (, ), (, ), (,), (,), (, ), (, ) Sehingga terbentuk delapan titik: (, ), (,), (, ), (, ), (,), (,), (, ), (, ) Dengan demikian sebenarna hana diperlukan untuk menghitung segmen 45 dalam menentukan lingkaran selengkapna..4. Algoritma Midpoint Langkah-langkah Algoritma Lingkaran Midpoint adalah:
. Tentukan jari-jari r dan pusat lingkaran ( p, p ), kemudian setting sedemikian rupa sehingga titik awal berada pada: (, ) = (, r). Hitung nilai parameter : p 5 4 r Jika jari-jari r pecahan p r Jika jari-jari r bulat. Untuk setiap posisi k, dimulai dengan k = berlaku ketentuan: - bila p k < maka titik selanjutna adalah ( k +, k ) dan p k+ = p k + k+ + - bila tidak, titik selanjutna adalah ( k +, k ) dan p k+ = p k + k+ + k+ 4. Tentukan titik simetris pada ketujuh oktan ang lain 5. Gerakkan setiap posisi piksel (, ) pada garis lingkaran dengan titik pusat ( p, p ) dan plot nilai koordinat : = + p, = + p 6. Ulangi langkah sampai dengan 5 hingga Contoh.9 Buatlah gambar kura lingkaran dengan pusat lingkaran (4,6) dan jari-jari 8, perhitungan berdasarkan dari oktan kuadran pertama dimana = sampai =. Koordinat titik awal dimulai dari (,r) = (,8). Karena jari-jari r bulat, maka gunakan P = r. Iterasi ke-: K = X = Y = r = 8 P = r = 8 = 7 Karena P <, maka : X = X + = + = dan Y = Y = 8, jadi Titik selanjutna : (,8) P = p + + = 7 +.() + = 4 Dengan algoritma simetris delapan titik, maka diperoleh titik-titik berikut : (,8), (,8), (, 8), (, 8), (8,), ( 8,), (8, ), ( 8, )
Gerakkan setiap posisi piksel (, ) pada garis lingkaran dengan titik pusat (4,6) diperoleh titiktitik berikut (5, 4), (, 4), (5, ), (, ), (, 7), ( 4, 7), (, 5), ( 4, 5) Iterasi ke-: K = X = Y = 8 P = 4 Karena P <, maka X = X + = + = dan Y = Y = 8, jadi Titik selanjutna : (,8) P = p + + = 4 +.() + = Dengan algoritma simetris delapan titik, maka diperoleh titik-titik berikut : (,8), (,8), (, 8), (, 8), (8,), ( 8,), (8, ), ( 8, ) Gerakkan setiap posisi piksel (, ) pada garis lingkaran dengan titik pusat (4,6) diperoleh titiktitik berikut (6, 4), (, 4), (6, ), (, ), (, 8), ( 4, 8), (, 4), ( 4, 4) Iterasi ke-: K = X = Y = 8 P = Karena P >, maka X = X + = + = dan Y = Y = 8 = 7, jadi Titik selanjutna : (,7) P = p + + = +.() +.(7) = 6 Dengan algoritma simetris delapan titik, maka diperoleh titik-titik berikut : (,7), (,7), (, 7), (, 7), (7,), ( 7,), (7, ), ( 7, ) Gerakkan setiap posisi piksel (, ) pada garis lingkaran dengan titik pusat (4,6) diperoleh titiktitik berikut (7, ), (, ), (7, ), (, ), (, 9), (, 9), (, ), (, ) Iterasi ke-4: K = X = Y = 7 P = 6 Karena P <, maka X 4 = X + = + = 4 dan Y 4 = Y = 7, jadi Titik selanjutna : (4,7) P 4 = p + 4 + = 6 +.(4) + =
Dengan algoritma simetris delapan titik, maka diperoleh titik-titik berikut : (4,7), ( 4,7), (4, 7), ( 4, 7), (7,4), ( 7,4), (7, 4), ( 7, 4) Gerakkan setiap posisi piksel (, ) pada garis lingkaran dengan titik pusat (4,6) diperoleh titiktitik berikut (8, ), (, ), (8, ), (, ), (, ), (, ), (, ), (, ) Iterasi ke-5: K = 4 X 4 = 4 Y 4 = 7 P 4 = Karena P 4 >, maka X 5 = X 4 + = 4 + = 5 dan Y 5 = Y 4 = 7 = 6, jadi Titik selanjutna : (5,6) P 5 = p 4 + 4 + 4 = +.(5) +.(6) = Dengan algoritma simetris delapan titik, maka diperoleh titik-titik berikut : (5,6), ( 5,6), (5, 6), ( 5, 6), (6,5), ( 6,5), (6, 5), ( 6, 5) Gerakkan setiap posisi piksel (, ) pada garis lingkaran dengan titik pusat (4,6) diperoleh titiktitik berikut (9, ), (, ), (9, ), (, ), (, ), (, ), (, ), (, ) Iterasi ke-6: K = 5 X 5 = 5 Y 5 = 6 P 5 = Karena P 5 >, maka X 6 = X 5 + = 5 + = 6 dan Y 6 = Y 5 = 6 = 5, jadi Titik selanjutna : (6,5) Iterasi dihentikan karena X > Y.
Bila digambar, hasil untuk oktan ke- ditunjukkan oleh gambar (.). Gambar.: Posisi piksel pada pembentukan lingkaran dengan titik pusat (,) dan jari-jari 8 Bab 4 Transformasi Geometri Matrik penajian Translasi : T = t t, sehingga = t t Matrik penajian Scalling : S = S S, sehingga = S S Matrik penajian Rotasi: R = cos sin sin cos, sehingga
= cos sin sin cos Contoh 4.7 Tentukan posisi dari segitiga ABC ang dibentuk oleh titik-titik A(,), B(,8) dan C(,) jika dilakukan transformasi berikut : a) translasi kearah sumbu = 4, kearah sumbu = b) Scalling dengan skala kearah sumbu =, kearah sumbu = c) Diputar 9 o berlawanan jarum jam Jawab: 4 4 4 7 a) = 8 = 6 diperoleh A (4,), B (4,6) dan C (7,) b) = 8 = 4 6 6 4 diperoleh A (, 4), B (, 6) dan C (6, 4) c) = cos9 sin 9 sin 9 cos9 8 = 8 diperoleh A (, ), B ( 8, ) dan C (, ) 4.5 Komposisi Matrik Transformasi D Contoh 4.8 Tentukan posisi dari segitiga ABC ang dibentuk oleh titik-titik A(5,5), B(,5) dan C(8,) jika dilakukan komposisi transformasi berikut: penggeseran pada 6, dilanjutkan dengan rotasi 9º 6
berlawanan jarum jam, kemudian diakhiri dengan penskalaan dengan faktor skala terhadap titik pusat P(,). Jawab: Dalam hal ini kita harus menghitung matrik komposisi berikut S * R * T * Proses dilakukan terhadap operasi translasi terlebih dahulu cos(9) sin(9) 6 5 8 sin(9) cos(9) 6 5 5 48 48 4 Diperoleh titik hasil transformasi : A (, ), B (, 48) dan C ( 48, 4) 4.8 Transformasi Geometri D Transformasi geometri D merupakan pengembangan dari transformasi geometri D. Secara umum representasi transformasi pada D juga dibuat dalam bentuk matrik untuk memudahkan perhitungan. 4.8. Translasi (,, ) (,, ) T (T, T, T )
Dalam hal ini, T T T. Dalam bentuk matrik T T T 4.8. Penskalaan (Scalling) Dalam hal ini, S S S.... Dalam bentuk matrik S S S 4.8. Rotasi Rotasi terhadap sumbu- sebesar sudut Ө. (,, ) (,, ) T (S, S, S ) (,, ) (,, )
cos sin Dalam hal ini, sin cos Dalam bentuk matrik rotasi terhadap sumbu- sebesar sudut Ө. cos sin sin cos Dengan cara ang sama diperoleh rotasi terhadap sumbu- sebesar sudut Ө. cos sin sin cos Dalam bentuk matrik rotasi terhadap sumbu- sebesar sudut Ө. cos sin sin cos rotasi terhadap sumbu- sebesar sudut Ө. cos sin sin cos Dalam bentuk matrik rotasi terhadap sumbu- sebesar sudut Ө.
cos sin sin cos Bab 5 Viewing Dan Clipping D 5.. Viewing Transformation matrik transformasi dari World Coordinates ke Viewer Coordinates Sstem adalah M WC VC u u * Sehingga posisi titik terhadap Viewing Coordinates adalah M WC VC * w w P word P M * P (5-) iewer WC VC word = posisi titik terhadap World Coordinates (data posisi titik pembentuk permukaan obek ang tersimpan di memori) P iewer = posisi titik terhadap Viewing Coordinates (posisi titik pembentuk bagian permukaan obek ang ada di dalam window) Contoh 5.
Sebuah segitiga T dibentuk oleh titik-titik (,), (4,) dan (4,) terletak pada World Coordinates dilihat oleh seorang pengamat dengan arah pandang atas P-Po, dimana Po(,) dan P(.5, ). Arah pandang atas inilah ang dipakai sebagai Viewing Coordinates. a) Hitunglah koordinat-koordinat segitiga T, terhadap pengamat (Viewing Coordinates). b) Sama seperti point (a), tetapi P(,) dan Po(,). Jawab: a) P(.5, ) Po(,) P P P P (.5,) (.5,) (,) (,) (.5,).5 (.6,.8) u (,,) (.6,.8,) (,,) (.8,.6).8.6.8.6 M WC VC.6.8 *.6.8 T M * T WC VC w.8.6 4 4.8.6 T.6.8 *.6. koordinat-koordinat segitiga T, terhadap pengamat adalah (.8,.6), (,), (.6,.) b) P(, ) Po(,) P P P P (,) (,) (,) (,) (,) (,) u (,,) (,,) (,,) (,,) 5.. Window to Viewport Transformation
Y Wma Window Y Vma Viewport ( w, w ) (, ) w Y W Y V X W w X Wma Word Coordinates Sstem X V X Vma Deice Coordinates Sstem Gambar 5-5: Transformasi dari window ke iewport Teknik ini diperlukan untuk menjaga proporsionalitas ukuran obek. Gambar 5-5 menunjukkan sebuah titik ang terletak di ( w, w ) pada koordinat window ditransformasi ke (, ) pada koordinat iewport dengan persamaan 5-: w w ma w w ma dan koordinat di normalisasi kedalam range [, ] seperti Gambar 5-6. w w ma w w ma (5-)
Window dalam iewing coordinat Normalied Coordinates Gambar 5-6: Normalisasi koordinat Sehingga, transformasi dari window ke Normalied Coordinates adalah n ( ) ( ) n ( ) ( ) w w w ma w ma w w w w atau n ( w w ) w w ma atau n ( w w ) w w ma transformasi dari Normalied Coordinates ke Viewport (Deice Coordinates). n ( ) ( ) ma ( ma atau ) ( n ) n ( ) ( ) ma ( ma atau ) ( n ) Contoh 5.
Diketahui sebuah titik terletak di (, ) pada World Coordinates dilihat melalui sebuah window berukuran (, ) (, ). Tentukan posisi titik tersebut pada Deice Coordinates, bila titik tersebut ditempatkan pada iewport berukuran (5, ) (6, 4) seperti pada Gambar 5-6, (a) tanpa Normalied Coordinates (b) dengan Normalied Coordinates (c) dengan Normalied Coordinates menggunakan standart VGA 64 48 (d) dengan Normalied Coordinates menggunakan standart SVGA 8 6 Jawab: Gambar 5-6: Sebuah titik terletak di (,) pada World Coordinates Sstem (a) w w ma w w ma w w ma w w ma 6 5 5 ( ) ( ) 4 = 5 = 5 (b) Transformasi dari window ke Normalied Coordinates n ( w w ) n ( w w ) w w w w ma n ( ) n [ ( )] ( ) Transformasi dari Normalied Coordinates ke Deice Coordinates (iewport) ( ma ) ( ma ( n ) ) ( n ) ma
(6 5) (4 ) 5 ( ) 5 ( ) 5 (c) standart VGA 64 48 ( ma ) ( ma ( n ) ) ( n ) (64 ) (48 ) ( ) ( ) 4 (d) standart SVGA 8 6 ( ma ) ( ma ( n ) ) ( n ) (8 ) (6 ) ( ) 4 ( ) 5.. Clipping Titik ma dan ma (5-6) Contoh 5. Diketahui sebuah koordinat window mempunai diagonal titik (5,7) (5,). Diketahui pula titik-titik A(,5), B(7,), C(,5) dan D(8,), terletak seperti pada Gambar 5-. Titik-titik ang akan ditampilkan dilaar adalah titik-titik ang berada didalam window, maka titik A(,5) dan titik D(8,) harus dilakukan clipping, sedangkan titik B(7,) dan titik C(,5) tidak dilakukan clipping. Y ma = Y ma = 7 A(,5) D(8,) Window C(,5) B (7,) X = 5 X ma = 5
Gambar 5-(a): Titik-titik A, B, C, dan D sebelum dilakukan clipping. Y ma = Y = 7 B (7,) Window C(,5) X = 5 X ma = 5 Gambar 5-(b): Setelah diclipping hana titik B dan C saja ang ditampilkan di laar. 5.. Clipping Garis Algoritma Clipping Garis Cohen-Sutherland Window di bagi-bagi menjadi wilaah-wilaah ang didasarkan pada urutan kode berikut : T B R L T : Top B : Bottom R : Right L : Left
T L T T R L Window R B L B B R Algoritma Kliping Cohen-Sutherland :. Tentukan region code dari setiap ujung garis. Jika kedua ujung garis memiliki regioncode, maka garis berada di dalam window clipping. Gambar garis tersebut. Sebelum proses clipping Setelah proses clipping. Jika salah satu ujung garis terletak di dalam window (garis P P ), lakukan clipping dengan cara berikut: tentukan titik potong garis dengan tepi window (misalna titik P), kemudian gambar garis antara ujung garis ang didalam window P dengan titik potong P. P P P P P Sebelum proses clipping Setelah proses clipping
4. Jika kedua ujung garis tidak berada didalam window, lakukan operasi logika AND untuk kedua region code o Jika hasilna tidak, maka buang garis tersebut (inisible) Sebelum proses clipping Setelah proses clipping o Jika hasilna (garis EF, garis CD dan garis AB), cari titik potong antara garis dengan sisi-sisi window. Cari dua titik potong ang berada di dalam window (E dan F atau C dan D ), kemudian gambar garis antara kedua titik potong tersebut. F D A Sebelum proses clipping E E C F C D B E F C D Setelah proses clipping 5. Ulangi langkah untuk garis ang lain. Titik potong garis dengan batas window dihitung menggunakan persamaan berikut: ( batas ) dan m( batas ) (5-7) m Contoh 5.4 Diketahui kedudukan garis-garis pada sebuah window pada gambar 5-: Berdasarkan gambar tersebut tentukan :
a. Region code dari titik-titik A, B, C, D, E, F, G, H, I, dan J, serta sebutkan berapa kategori ang dapat dibangun berdasakan region code tadi. b. Dengan menggunakan algoritma clipping Cohen-Sutherland, jelaskan bagaimana proses Jawab: clipping dilakukan terhadap garis CD, EF dan GH. C(5,) C B(5,9) I(,8) E(,5) D(7,8) Window G(, ) A(,4) E J(9,) H G F F(5, ) H(, ) 8 A) Titik Region code Kategori Titik A(,4) isible B(5,9) isible C(5,) inisible D(7,8) isible E(,5) inisible F(5,-) inisible G(,) inisible H(,-) inisible I(,8) inisible J(9,) inisible Kategori I : Garis AB isible, karena region code kedua ujungna Kategori II : Garis I J inisible karena, region code I =, J = dan AND =
Kategori III : Garis CD candidates for clipping, karena AND = Garis EF candidates for clipping, karena AND = Garis GH candidates for clipping, karena AND = B) Proses Clipping Clipping garis CD Garis CD melewati titik C (5,) region code (atas window) dan tittik D(7,8) region code (dalam window). Gradien garis CD : m 8 7 5 Titik potong C antara garis CD dengan batas atas window ma = adalah ( ) batas m 5 / 5,67 Titik potong C (5,67, ) region code = Clipp garis CC dan gambar garis C D, karena garis C D region code kedua ujungna Clipping garis EF Garis EF melewati titik E (, 5) region code (kiri window) dan titik F(5, ) region code (bawah window). Gradien garis EF m Titik potong E antara garis EF dengan batas kiri window = adalah 5,6 m( ) 6 ( 5 batas ) Titik potong E (,,6) region code = Titik potong F antara garis EF dengan batas bawah window = adalah 5 5 6 5
8 ( batas ) m 5 /,67 Titik potong F (,67, ) region code = Clipp garis EE dan garis FF karena keduana inisible, kemudian gambar garis E F, karena region code kedua ujungna Clipping garis GH Garis GH melewati titik G (, ) region code (kiri window) dan H(, ) region code (bawah window) m 4 Titik potong G antara garis GH dengan batas kiri window = adalah, m( ) 4 ( batas ) Titik potong G (,,) region code = Titik potong H antara garis GH dengan batas bawah window = adalah,5 ( ) batas m 4 / Titik potong H (,5, ) region code = karena region code kedua titik potongna, maka garis G H inisible.
Hasil Clipping E A(,4) F C B(5,9) D(7,8) Window 8 Soal Soal Latihan. Diketahui buah titik A dan titik B. Bila titik A sebagai titik awal dan titik B sebagai titik akhir, tentukan titik-titik antara ang menghubungkan titik A dan titik B sehingga membentuk garis AB dengan menggunakan (a) Algoritma brute force (b) algoritma DDA (c) algoritma Bressenham, jika : i) A(,) dan B(, 6) ii) A(,) dan B(7, 7)
iii) A( 5, ) dan B(, ) i) A( 5, 4) dan B(,) Berdasarkan soal no., bagaimana menurut saudara, mana algoritma ang lebih baik, Algoritma brute force, algoritma DDA atau algoritma Bressenham? Mengapa? 4. (a) Buatlah gambar kura lingkaran dengan pusat lingkaran (,) dan jari-jari 6, perhitungan berdasarkan dari oktan kuadran pertama dimana = sampai = r. Koordinat titik awal dimulai dari (,r) = (,6). Untuk mempermudah perhitungan gunakan P = r ( sekali lagi, ini hana untuk mempermudah perhitungan dalam contoh). (b) sama seperti soal (a), tetapi pusat lingkarang di P(,5).. Tentukan posisi dari segitiga ABC ang dibentuk oleh titik-titik A(,4), B(5,) dan C(6,), jika dilakukan pemutaran dengan pusat sumbu koordinat dengan rotasi putarna derajat berlawanan arah dengan arah jarum jam. 4. Tentukan posisi dari segitiga ABC ang dibentuk oleh titik-titik A(,5,6), B(5,8,) dan C(,5,) jika dilakukan transformasi berikut : a) translasi kearah sumbu =, sumbu =, sumbu = 4 b) Scalling dengan skala kearah sumbu = 5, sumbu =, sumbu = 7 c) Diputar 45 o terhadap sumbu. Diketahui sebuah titik terletak di (, ) pada World Coordinates Sstem dilihat melalui sebuah window berukuran (, ) (, ). Tentukan posisi titik tersebut pada Deice Coordinates Sstem, bila titik tersebut ditempatkan pada iewport berukuran (, ) (, 7) (a) tanpa Normalied Coordinates (b) dengan Normalied Coordinates (c) dengan Normalied Coordinates menggunakan standart XGA 4 768 (d) dengan Normalied Coordinates menggunakan standart SXGA 8 4. Diketahui sebuah koordinat window mempunai diagonal titik (,8) (,). Diketahui pula titik-titik A(,5), B(7,), C(,5) dan D(8,). Agar bisa ditampilkan dilaar, tentukan titik-titik mana ang harus dilakukan clipping
. Tentukan hasil clipping garis menggunakan algoritma Cohen-Sutherland untuk gambar berikut B( 5,) 8 C(,9) F(8, 9) A(,4) Window G(4,) H(,) E ( 5, ) D(, ) 6 4. Tentukan hasil clipping garis menggunakan algoritma Liang-Barsk untuk gambar berikut B(,9) C(,9) 7 A(,) E (, 5) Window F(, ) 4 D(5, )
5. Lakukan Clipping dengan algoritma Sutherland-Hodgman dari sebuah polgon (A, B, C, D) ang dibatasi oleh window segi empat (, ) (,8) seperti gambar berikut A(, ) B(, ) 8 D(4, ) C(, )