• Tidak ada hasil yang ditemukan

ALGORITMA PERPOTONGAN OBJEK

N/A
N/A
Protected

Academic year: 2021

Membagikan "ALGORITMA PERPOTONGAN OBJEK"

Copied!
23
0
0

Teks penuh

(1)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

ALGORITMA PERPOTONGAN OBJEK

Ina Agustina, Fauziah

Jurusan Sistem Informasi, Fakultas Teknologi Komunikasi dan Informatika, Universitas Nasional

Jl. Sawo Manila, Peja ten Pasar Minggu No.61, Jakarta 12520 E-mail ict@unas.ac.id

ABSTRAK

Grafika komputer adalah gambar atau grafik yang dihasilkan oleh computer yang merupakan sekumpulan alat yang digunakan utnuk membuuat gambar dan berinteraksi dengan gambar dengan cara-cara yang biasa digunakan. Secara umum program-program computer grafis ditujukan untuk memudahkan interaksi antara manusia dengan komputer. Pada makalah ini akan dijelaskan tentang kliping yaitu kliping titik, garis dan kliping polygon

Keyword : Algoritma perpotongan objek, kliping titik, kliping garis dan kliping polygon

I. PENDAHULUAN Latar Belakang masalah

Latar belakang dibuatnya makalah ini adalah untuk melengkapi niai tugas semester lima grafika komputer selain itu makalah ini dibuat untuk memperjelas bentuk-bentuk kliping yaitu kliping garis dan kliping polygon.

II. LANDASAN TEORI

Kliping adalah pemotongan suatu objek dengan bentuk tertentu. Alasan dilakukannya kliping :

1. Menghindari perhitungan koordinat pixel yang rumit (karenanya kliping dilakukan sebelum rasterisasi).

2. Interpolasi parameter

Sarana pemotong objek disebut jendela kliping. Fungsi jendela kliping adalah untuk mengidentifikasi objek yang akan di-clipping dan memastikan bahwa data yang diambil ha nya yang terletak di dalam jendela clipping.

Bentuk jendela kliping : 1. Segi empat, segi tiga 2. Lingkaran atau ellips 3. Polygon dan lain-lain.

(2)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

Untuk menentukan letak suatu titik di dalam jendela kliping, digunakan ketentuan : Xmin <= X <= Xmax dan Ymin <= Y <= Ymax.

Pada gambar di atas, terdapat sebuah jendela kliping dengan parameter sebagai berikut : Xmin -batas minimum sumbu X

Xmax -batas maksimum sumbu X Ymin -batas minimum sumbu Y Ymax -batas maksimum sumbu Y

Terdapat w2 buah titik P1(x,y) dan P2(x,y) dengan :

P1 terletak di dalam jendela kliping karena P1.x < Xmax dan P1.x > Xmin serta P1.y < Ymax dan P1.y > Ymin

P2 terletak di dalam jendela kliping,karena P2.x < Xmin walaupun P2.x < Xmax P2.y < Ymax dan P2.y > Ymin.

2. Kliping Garis

Kliping sebuah garis P1 dan P2 dengan jendela L, R, T, dan B akan berhubungan dengan garis yang terletak di dalam jendela dan garis di luar jendela. Garis yang berada di dalam jendela adalah garis yang akan ditampilkan (P1’–P2’), sedangkan garis yang terletak di luar jendela dibuat tidak tampak (P1 –P1’dan P2 –P2’)

(3)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

Untuk menentukan letak sebuah garis di dalam jendela kliping dilakukan analisis letak titik yang menentukan garis tersebut dan memastikan bahwa titik-titik tersebut berada di dalam jendela kliping.

Kondisi garis terhadap jendela kliping :

1. Invisible : Tidak kelihatan, terletak di luar jendela kliping 2. Visible : Terletak di dalm jendela kliping

3. Halfpartial : Terpotong sebagian oleh jendela kliping, bisa hanya dnegan bagian atas, bawah, kiri atau kanan

4. Vollpartial: Terpotong penuh oleh jendela kliping. Garis melintasi jendela kliping

(4)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

Kliping Garis Cohen-Sutherland

Hubungan antara sebuah garis dengan jendela kliping dapat ditulis seperti hubungan antara titik awal dan titik akhir sebuah garis dengan jendela kliping P1(x,y) dan P2(x,y) W(L,R,T,B). Untuk menentukan relasi tersebut diperlukan suatu struktur data pembantu yang disebut pointcode . Dengan pointcode kita dapat mengidentifikasi posisi titik terhadap jendela kliping. Nilai untuk pointcode l, r, t dan b adalah 1dan 0 yang merupakan nilai logika yang dapat dimengerti dengan nilai true dan false.

Suatu titik yang visible berarti titik tersebut terletak di dalam jendela kliping, dan invisible jika

terletak di luar jendela kliping. Suatu titik itu visible dengan pointcode jika nilai l, r, t dan b adalah nol, artinya jika salah satu nilai dari l, r, t dan b tidak sama degan nol maka dapat diketahui bahwa titik tersebut terletak di luar jendela kliping dan diketahui pada posisi mana.

(5)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

Titik terletak di dalam jendela kliping jika jumlah keempat pointcode adalah nol :L + R + T + B = 0. Titik terletak di luar jendela kliping jika jumlah keempat pointcode lebih besar dari nol. L + R + T + B > 0.

Visibilitas suatu garis tergantung dari pointcode pada kedua titik yang membentuk garis tersebut, yaitu P1 dan P2.

Jika P1 dan P2 di dalam jendela kliping maka garis adalah visible.

Jika salah satu dari titik P1 atau P2 di uar jendela kliping, artinya garis adalah halfpartial.

Jika titik P1 dan P2 di luar jendela kliping, artinya garis adalah invisible .

Jika P1 dan P2 melintasi jendela kliping, artinya garis adalah vollpartial.

Algoritma Kliping Cohen-Sutherland :

1.Tentukan regioncode dari setiap endpoint

2.Jika kedua endpoint memiliki regioncode 0000, maka garis berada di dalam jendela kliping. Gambar garis tersebut

3.Jika tidak, lakukan operasi logika AND untuk kedua regioncode 3.1. Jika hasilnya 0000, maka buang garis tersebut (tolak)

3.2 Jika tidak (hasilnya 000), maka dibutuhkan kliping

3.2.1. Pilih salah satu endpoint yang berada di luar jendela kliping

3.2.2. Cari titik persinggungan pada batas jendela (berdasarkan regioncode) 3.2.3. Ganti endpoint dengan titik persinggungan dan update regioncode

(6)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

4. Ulangi langkah 2 untuk garis yang lain.

Daerah titik persinggungan dapat dilihat dari nilai bit :

• Jika bit 1 = 1, titik persinggungan ada di atas.

• Jika bit 2 = 1, titik persinggungan ada di bawah.

• Jika bit 3 = 1, titik persinggungan ada di kanan.

• Jika bit 4 = 1, titik persinggungan ada di kiri. Titik persinggungan dapat dicari dengan persamaan garis : * Persinggungan antara batas KIRI dan KANAN

x = xwmin (LEFT) x = xwmax (RIGHT)

y = y1 + m(x –x1)

* Persinggungan antara batas ATAS dan BAWAH

y = ywmin (BOTTOM) y = ywmax (TOP)

(7)

Jurnal Basis Data, ICT Research Center UNAS

(8)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

3. Kliping Poligon

Kliping Poligon Sutherland-Hodgeman

Kliping poligon lebih kompleks dibandingkan kliping garis :

• Input: polygon.

• Output: poligon asli, poligon baru, atau lainnya.

• Contoh : Apa yang terjadi apabila pada suatusegitiga dilakukan kliping? Kemungkinan hasilnya :

Ide Dasar Kliping Poligon :

• Perhatikan setiap edge pada setiap arah pandang.

• Klip/potong poligon dengan persamaan edge.

(9)

Jurnal Basis Data, ICT Research Center UNAS

(10)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483 III. PEMBAHASAN ALGORITMA / PROGRAM 1 . P e r p o t o n g a n G a r i s d a n G a r i s # i n c l u d e < w i n d o w s . h > # i n c l u d e < G L / g l . h > # i n c l u d e < G L / g l u . h > # i n c l u d e < G L / g l f w . h > # i n c l u d e < m a t h . h > v o i d m u l a i O p e n G L ( v o i d ) ; i n t m a i n ( v o i d ) { / / / / m R u n n i n g = T R U E , a p l i k a s i m a s i h b e r j a l a n / / m R u n n i n g = F A L S E , ? ? ? : p G L u i n t m R u n n i n g = G L _ T R U E ; / / / / i n i s i a l i s a s i G L F W i f ( g l f w I n i t ( ) = = G L _ F A L S E ) { M e s s a g e B o x ( N U L L , " E R R O R : : g a g a l m e n g i n i s i a l i s a s i G L F W " , " E r r o r ! " , M B _ O K ) ; r e t u r n ( 0 ) ; } / / / / b u a t s e b u a h w i n d o w y a n g a k a n d i g u n a k a n u n t u k m e n g g a m b a r . i f ( g l f w O p e n W i n d o w ( 6 4 0 , 4 8 0 , 0 , 0 , 0 , 0 , 2 4 , 0 , G L F W _ W I N D O W ) = =

(11)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

M e s s a g e B o x ( N U L L , " E R R O R : : g a g a l m e m b u a t w i n d o w " , " E r r o r ! " , M B _ O K ) ; g l f w T e r m i n a t e ( ) ; r e t u r n ( 0 ) ; } / / / / S e t j u d u l y a n g a d a d i w i n d o w d a n S w a p i n t e r v a l . g l f w S e t W i n d o w T i t l e ( " P r a k t i k u m G r a f i k K o m p u t e r L a b T I " ) ; g l f w S w a p I n t e r v a l ( 1 ) ; / / / / m u l a i O p e n G L ( m e l a k u k a n s e t t i n g a w a l O p e n G L ) m u l a i O p e n G L ( ) ; f l o a t P o s _ X , P o s _ Y , P o s _ Z ; f l o a t S u d u t _ U b a h _ H o r i z o n t a l = 0 . 0 ; f l o a t S u d u t _ U b a h _ V e r t i k a l = 0 . 0 ; P o s _ X = 0 ; P o s _ Z = 0 ; P o s _ Y = 0 ; / / m u l a i l o o p i n g u t a m a p r o g r a m w h i l e ( m R u n n i n g ) { / / / / b e r s i h k a n l a y a r d a n d e p t h b u f f e r g l C l e a r ( G L _ C O L O R _ B U F F E R _ B I T | G L _ D E P T H _ B U F F E R _ B I T ) ; g l L o a d I d e n t i t y ( ) ; / / / / l a k u k a n p e n g g a m b a r a n d i s i n i

(12)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

/ / - - - g l u L o o k A t ( P o s _ X , P o s _ Y , P o s _ Z , 0 , 0 , 0 , 0 , 1 , 0 ) ; g l B e g i n ( G L _ L I N E S ) ; g l C o l o r 3 f ( 1 , 0 , 0 ) ; g l V e r t e x 2 f ( 1 ,- 3 ) ; g l V e r t e x 2 f (- 2 , 5 ) ; g l E n d ( ) ; g l B e g i n ( G L _ L I N E S ) ; g l C o l o r 3 f ( 0 , 1 , 0 ) ; g l V e r t e x 2 f ( 2 , 2 ) ; g l V e r t e x 2 f (- 2 ,- 4 ) ; g l E n d ( ) ; / / - - - / / / / t a m p i l k a n k e l a y a r ( s w a p d o u b l e b u f f e r ) g l f w S w a p B u f f e r s ( ) ; P o s _ X = 8 . 0 * c o s f ( S u d u t _ U b a h _ H o r i z o n t a l ) ; P o s _ Z = 8 . 0 * s i n f ( S u d u t _ U b a h _ H o r i z o n t a l ) ; S u d u t _ U b a h _ H o r i z o n t a l + = 0 . 0 1 ; i f ( S u d u t _ U b a h _ H o r i z o n t a l > 6 . 2 8 ) S u d u t _ U b a h _ H o r i z o n t a l = 0 . 0 ; / / > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > P o s _ Y = 4 . 0 * s i n f ( S u d u t _ U b a h _ V e r t i k a l ) ; S u d u t _ U b a h _ V e r t i k a l + = 0 . 0 0 5 ; i f ( S u d u t _ U b a h _ V e r t i k a l > 6 . 2 8 ) S u d u t _ U b a h _ V e r t i k a l = 0 . 0 ;

(13)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

m R u n n i n g = ! g l f w G e t K e y ( G L F W _ K E Y _ E S C ) & & g l f w G e t W i n d o w P a r a m ( G L F W _ O P E N E D ) ; } g l f w T e r m i n a t e ( ) ; r e t u r n ( 0 ) ; } v o i d m u l a i O p e n G L ( v o i d ) { / / / / S e t v i e w p o r t k e r e s o l u s i 6 4 0 x 4 8 0 v i e w p o r t b i s a d i i b a r a t k a n / / l a y a r m o n i t o r a n d a g l V i e w p o r t ( 0 , 0 , 6 4 0 , 4 8 0 ) ; / / / / S e t m o d e O p e n G L k e m o d e p r y e k s i ( P r o j e c t i o n ) d a n s e t p r o y e k s i / / m e n g g u n a k a n p r o y e k s i p e r s p e c t i v e , d e n g a n s u d u t p a n d a n g ( F i e l d O f / / V i e w ) 6 0 d e r a j a t g l M a t r i x M o d e ( G L _ P R O J E C T I O N ) ; g l L o a d I d e n t i t y ( ) ; g l u P e r s p e c t i v e ( 6 0 . 0 f , 6 4 0 . 0 f / 4 8 0 . 0 f , 0. 1 f , 1 0 0 0 . 0 f ) ; g l M a t r i x M o d e ( G L _ M O D E L V I E W ) ; g l L o a d I d e n t i t y ( ) ; / / / / S e t m o d e g r a d a s i w a r n a h a l u s ( S m o o t h ) g l S h a d e M o d e l ( G L _ S M O O T H ) ; / / / / w a r n a y a n g d i g u n a k a n u n t u k m e m b e r s i h k a n l a y a r g l C l e a r C o l o r ( 0 . 0 f , 0 . 0 f , 0 . 0 f , 0 . 0 f ) ;

(14)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

/ / / / n i l a i u n t u k m e m b e r s i h k a n d e p t h b u f f e r . g l C l e a r D e p t h ( 1 . 0 f ) ; / / / / D e p t h t e s t d i g u n a k a n u n t u k m e n g h i n d a r i p o l y g o n y a n g / / t u m p a n g t i n d i h . g l E n a b l e ( G L _ D E P T H _ T E S T ) ; g l D e p t h F u n c ( G L _ L E Q U A L ) ; / / / / b e r i t a h u O p e n G L u n t u k m e n g g u n a k a n p e r h i t u n g a n p e r s p e c t i v e // ya n g t e r b a i k ( p e r h i t u n g a n i n i t i d a k b i s a s e l a l u 1 0 0 % a k u r a t ) g l H i n t ( G L _ P E R S P E C T I V E _ C O R R E C T I O N _ H I N T , G L _ N I C E S T ) ; } 2 . P e r p o t o n g a n G a r i s d a n P o l i g o n # i n c l u d e < w i n d o w s . h > # i n c l u d e < G L / g l . h > # i n c l u d e < G L / g l u . h > # i n c l u d e < G L / g l f w . h > # i n c l u d e < m a t h . h > v o i d m u l a i O pe n G L ( v o i d ) ; i n t m a i n ( v o i d ) { / / / / m R u n n i n g = T R U E , a p l i k a s i m a s i h b e r j a l a n / / m R u n n i n g = F A L S E , ? ? ? : p

(15)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

i f ( g l f w I n i t ( ) = = G L _ F A L S E ) { M e s s a g e B o x ( N U L L , " E R R O R : : g a g a l m e n g i n i s i a l i s a s i G L F W " , " E r r o r ! " , M B _ O K ) ; r e t u r n ( 0 ) ; } / / / / b u a t s e b u a h w i n d o w y a n g a k a n d i g u n a k a n u n t u k m e n g g a m b a r . i f ( g l f w O p e n W i n d o w ( 6 4 0 , 4 8 0 , 0 , 0 , 0 , 0 , 2 4 , 0 , G L F W _ W I N D O W ) = = G L _ F A L S E ) { M e s s a g e B o x ( N U L L , " E R R O R : : g a g a l m e m b u a t w i n d o w " , " E r r o r ! " , M B _ O K ) ; g l f w T e r m i n a t e ( ) ; r e t u r n ( 0 ) ; } / / / / S e t j u d u l y a n g a d a d i w i n d o w d a n S w a p i n t e r v a l . g l f w S e t W i n d o w T i t l e ( " P r a k t i k u m G r a f i k K o m p u t e r L a b T I " ) ; g l f w S w a p I n t e r v a l ( 1 ) ; / / / / m u l a i O p e n G L ( m e l a k u k a n s e t t i n g a w a l O p e n G L ) m u l a i O p e n G L ( ) ; f l o a t P o s _ X , P o s _ Y , P o s _ Z ; f l o a t S u d u t _ U b a h _ H o r i z o n t a l = 0 . 0 ; f l o a t S u d u t _ U b a h _ V e r t i k a l = 0 . 0 ; P o s _ X = 0 ; P o s _ Z = 0 ; P o s _ Y = 0 ;

(16)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

/ / m u l a i l o o p i n g u t a m a p r o g r a m w h i l e ( m R u n n i n g ) { / / / / b e r s i h k a n l a y a r d a n d e p t h b u f f e r g l C l e a r ( G L _ C O L O R _ B U F F E R _ B I T | G L _ D E P T H _ B U F F E R _ B I T ) ; g l L o a d I d e n t i t y ( ) ; / / / / l a k u k a n p e n g g a m b a r a n d i s i n i / / - - - g l u L o o k A t ( P o s _ X , P o s _ Y , P o s _ Z , 0 , 0 , 0 , 0 , 1 , 0 ) ; g l B e g i n ( G L _ L I N E _ L O O P ) ; g l C o l o r 3 f ( 1 , 0 , 0 ) ; g l V e r t e x 2 f ( 1 , 1); g l V e r t e x 2 f ( 1 ,- 1 ) ; g l V e r t e x 2 f (- 1 ,- 1 ) ; g l V e r t e x 2 f (- 1 , 1 ) ; g l E n d ( ) ; g l B e g i n ( G L _ L I N E S ) ; g l C o l o r 3 f ( 0 , 1 , 0 ) ; g l V e r t e x 2 f ( 2 , 2 ) ; g l V e r t e x 2 f (- 2 ,- 4 ) ; g l E n d ( ) ; / / - - - / /

(17)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

P o s _ Z = 8 . 0 * s i n f ( S u d u t _ U b a h _ H o r i z o n t a l ) ; S u d u t _ U b a h _ H o r i z o n t a l + = 0 . 0 1 ; i f ( S u d u t _ U b a h _ H o r i z o n t a l > 6 . 2 8 ) S u d u t _ U b a h _ H o r i z o n t a l = 0 . 0 ; / / / / > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > P o s _ Y = 4 . 0 * s i n f ( S u d u t _ U b a h _ V e r t i k a l ) ; S u d u t _ U b a h _ V e r t i k a l + = 0 . 0 0 5 ; i f ( S u d u t _ U b a h _ V e r t i k a l > 6 . 2 8 ) S u d u t _ U b a h _ V e r t i k a l = 0 . 0 ; / / / / / / c h e c k i n p u t , a p a k a h t o m b o l e s c d i t e k a n a t a u t o m b o l " c l o s e " d i c l i c k m R u n n i n g = ! g l f w G e t K e y ( G L F W _ K E Y _ E S C ) & & g l f w G e t W i n d o w P a r a m ( G L F W _ O P E N E D ) ; } g l f w T e r m i n a t e ( ) ; r e t u r n ( 0 ) ; } v o i d m u l a i O p e n G L ( v o i d ) { / / / / S e t v i e w p o r t k e r e s o l u s i 6 4 0 x 4 8 0 v i e w p o r t b i s a d i i b a r a t k a n / / l a y a r m o n i t o r a n d a g l V i e w p o r t ( 0 , 0 , 6 4 0 , 4 8 0 ) ; / / / / S e t m o d e O p e n G L k e m o d e p r y e k s i ( P r o j e c t i o n ) d a n s e t p r o y e k s i / / m e n g g u n a k a n p r o y e k s i p e r s p e c t i v e , d e n g a n s u d u t p a n d a n g ( F i e l d O f

(18)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

/ / V i e w ) 6 0 d e r a j a t g l M a t r i x M o d e ( G L _ P R O J E C T I O N ) ; g l L o a d I d e n t i t y ( ) ; g l u P e r s p e c t i v e ( 6 0 . 0 f , 6 4 0 . 0 f / 4 8 0 . 0 f , 0 . 1 f , 1 0 0 0 . 0 f ) ; g l M a t r i x M o d e ( G L _ M O D E L V I E W ) ; g l L o a d I d e n t i t y ( ) ; / / / / S e t m o d e g r a d a s i w a r n a h a l u s ( S m o o t h ) g l S h a d e M o d e l ( G L _ S M O O T H ) ; / / / / w a r n a y a n g d i g u n a k a n u n t u k m e m b e r s i h k a n l a y a r g l C l e a r C o l o r ( 0 . 0 f , 0 . 0f , 0 . 0 f , 0 . 0 f ) ; / / / / n i l a i u n t u k m e m b e r s i h k a n d e p t h b u f f e r . g l C l e a r D e p t h ( 1 . 0 f ) ; / / / / D e p t h t e s t d i g u n a k a n u n t u k m e n g h i n d a r i p o l y g o n y a n g / / t u m p a n g t i n d i h . g l E n a b l e ( G L _ D E P T H _ T E S T ) ; g l D e p t h F u n c ( G L _ L E Q U A L ) ; / / / / b e r i t a h u O p e n G L u n t u k m e n g g u n a k a n p e r h i t u n g a n p e r s p e c t i v e / / y a n g t e r b a i k ( p e r h i t u n g a n i n i t i d a k b i s a s e l a l u 1 0 0 % a k u r a t ) g l H i n t ( G L _ P E R S P E C T I V E _ C O R R E C T I O N _ H I N T , G L _ N I C E S T ) ;

(19)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483 3 . P e r p o t o n g a n P o l i g o n d a n P o l i g o n # i n c l u d e < w i n d o w s . h > # i n c l u d e < G L / g l . h > # i n c l u d e < G L / g l u . h > # i n c l u d e < G L / g l f w . h > # i n c l u d e < m a t h . h > v o i d m u l a i O p e n G L ( v o i d ) ; i n t m a i n ( v o i d ) { / / / / m R u n n i n g = T R U E , a p l i k a s i m a s i h b e r j a l a n / / m R u n n i n g = F A L S E , ? ? ? : p G L u i n t m R u n n i n g = G L _ T R U E ; / / / / i n i s i a l i s a s i G L F W i f ( g l f w I n i t ( ) = = G L _ F A L S E ) { M e s s a g e B o x ( N U L L , " E R R O R : : g a g a l m e n g i n i s i a l i s a s i G L F W " , " E r r o r ! " , M B _ O K ) ; r e t u r n ( 0 ) ; } / / / / b u a t s e b u a h w i n d o w y a n g a k a n d i g u n a k a n u n t u k m e n g g a m b a r . i f ( g l f w O p e n W i n d o w ( 6 4 0 , 4 8 0 , 0 , 0 , 0 , 0 , 2 4 , 0 , G L F W _ W I N D O W ) = = G L _ F A L S E ) {

(20)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

M e s s a g e B o x ( N U L L , " E R R O R : : g a g a l me m b u a t w i n d o w " , " E r r o r ! " , M B _ O K ) ; g l f w T e r m i n a t e ( ) ; r e t u r n ( 0 ) ; } / / / / S e t j u d u l y a n g a d a d i w i n d o w d a n S w a p i n t e r v a l . g l f w S e t W i n d o w T i t l e ( " P r a k t i k u m G r a f i k K o m p u t e r L a b T I " ) ; g l f w S w a p I n t e r v a l ( 1 ) ; / / / / m u l a i O p e n G L ( m e l a k u k a n s e t t i n g a w a l O p e n G L ) m u l a i O p e n G L ( ) ; f l o a t P o s _ X , P o s _ Y , P o s _ Z ; f l o a t S u d u t _ U b a h _ H o r i z o n t a l = 0 . 0 ; f l o a t S u d u t _ U b a h _ V e r t i k a l = 0 . 0 ; P o s _ X = 0 ; P o s _ Z = 0 ; P o s _ Y = 0 ; / / m u l a i l o o p i n g u t a m a p r o g r a m w h i l e ( m R u n n i n g ) { / / / / b e r s i h k a n l a y a r d a n d e p t h b u f f e r g lC l e a r ( G L _ C O L O R _ B U F F E R _ B I T | G L _ D E P T H _ B U F F E R _ B I T ) ; g l L o a d I d e n t i t y ( ) ;

(21)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

g l u L o o k A t ( P o s _ X , P o s _ Y , P o s _ Z , 0 , 0 , 0 , 0 , 1 , 0 ) ; g l B e g i n ( G L _ L I N E _ L O O P ) ; g l C o l o r 3 f ( 1 , 0 , 0 ) ; g l V e r t e x 2 f ( 1 , 1 ) ; g l V e r t e x 2 f ( 1 ,- 1 ) ; g l V e r t e x 2 f (- 1 ,- 1 ) ; g l V e r t e x 2 f (- 1 , 1 ) ; g l E n d ( ) ; g l B e g i n ( G L _ L I N E _ L O O P ) ; g l C o l o r 3 f ( 0 , 1 , 0 ) ; g l V e r t e x 2 f ( 2 , 2 ) ; g l V e r t e x 2 f ( 2 ,- 2 ) ; g l V e r t e x 2 f (- 2 , 1 ) ; g l E n d ( ) ; / / - - - - -- - - / / / / t a m p i l k a n k e l a y a r ( s w a p d o u b l e b u f f e r ) g l f w S w a p B u f f e r s ( ) ; P o s _ X = 8 . 0 * c o s f ( S u d u t _ U b a h _ H o r i z o n t a l ) ; P o s _ Z = 8 . 0 * s i n f ( S u d u t _ U b a h _ H o r i z o n t a l ) ; S u d u t _ U b a h _ H o r iz o n t a l + = 0 . 0 1 ; i f ( S u d u t _ U b a h _ H o r i z o n t a l > 6 . 2 8 ) S u d u t _ U b a h _ H o r i z o n t a l = 0 . 0 ; / / / / > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > P o s _ Y = 4 . 0 * s i n f ( S u d u t _ U b a h _ V e r t i k a l ) ; S u d u t _ U b a h _ V e r t i k a l + = 0 . 0 0 5 ; i f ( S u d u t _ U b a h _ V e r t i k a l > 6 . 2 8 ) S ud u t _ U b a h _ V e r t i k a l = 0 . 0 ;

(22)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

/ / / / c h e c k i n p u t , a p a k a h t o m b o l e s c d i t e k a n a t a u t o m b o l " c l o s e " d i c l i c k m R u n n i n g = ! g l f w G e t K e y ( G L F W _ K E Y _ E S C ) & & g l f w G e t W i n d o w P a r a m ( G L F W _ O P E N E D ) ; } g l f w T e r m i n a t e ( ) ; r e t u r n ( 0 ) ; } v o i d m u l a i O p e n G L ( v o i d ) { / / / / S e t v i e w p o r t k e r e s o l u s i 6 4 0 x 4 8 0 v i e w p o r t b i s a d i i b a r a t k a n / / l a y a r m o n i t o r a n d a g l V i e w p o r t ( 0 , 0 , 6 4 0 , 4 8 0 ) ; / / / / S e t m o d e O p e n G L k e m o d e p r y e k s i ( P r o j e c t i o n ) d a n s e t p r o y e k s i / / m e n g g u n a k a n p r o y e k s i p e r s p e c t i v e , d e n g a n s u d u t p a n d a n g ( F i e l d O f / / V i e w ) 6 0 d e r a j a t g l M a t r i x M o d e ( G L _ P R O J E C T I O N ) ; g l L o a d I d e n t i t y ( ) ; g l u P e r s p e c t i v e ( 6 0 . 0 f , 6 4 0 . 0 f / 4 8 0 . 0 f , 0 . 1 f , 1 0 0 0 . 0 f ) ; g l M a t r i x M o d e ( G L _ M O D E L V I E W ) ; g l L o a d I d e n t i t y ( ) ; / / / / S e t m o d e g r a d a s i w a r n a h a l u s ( S m o o t h )

(23)

Jurnal Basis Data, ICT Research Center UNAS

Vol.4 No.1 Mei 2009 ISSN 1978-9483

g l C l e a r C o l o r ( 0 . 0 f , 0 . 0 f , 0 . 0 f , 0 . 0 f ) ; / / / / n i l a i u n t u k m e m b e r s i h k a n d e p t h b u f f e r . g l C l e a r D e p t h ( 1 . 0 f ) ; / / / / D e p t h t e s t d i g u n a k a n u n t u k m e n g h i n d a r i p o l y g o n y a n g / / t u m p a n g t i n d i h . g l E n a b l e ( G L _ D E P TH _ T E S T ) ; g l D e p t h F u n c ( G L _ L E Q U A L ) ; / / / / b e r i t a h u O p e n G L u n t u k m e n g g u n a k a n p e r h i t u n g a n p e r s p e c t i v e / / y a n g t e r b a i k ( p e r h i t u n g a n i n i t i d a k b i s a s e l a l u 1 0 0 % a k u r a t ) g l H i n t ( G L _ P E R S P E C T I V E _ C O R R E C T I O N _ H I N T , G L _ N I C E S T ) ; } IV. PENUTUP KESIMPULAN

Kliping merupakan pemotongan suatu objek dengan bentuk tertentu yang ditujukan untuk menghindari perhitungan koordinat pixel yang rumit (karenanya kliping dilakukan sebelum rasterisasi) dan untuk interpolasi parameter. Jendela kliping terdiri dari 9 bagian yang terdiri dari B, T, R, dan L. Yang masing-masing jendela terdiri dari 4 karakter ( b1, b2, b3, b4 ). Yang merupakan bagian utama dari jendela kliping adalah 0000. Jendela kliping berada diantara Xmin <= X <= Xmax dan Ymin <= Y <= Ymax. Kliping garis bisa dinyatakan sebagai visible jika titik itu berada didalam jendela kliping. Invisible jika titik itu berada diluar jendela kliping. Halfpatial jika salah satu titik itu berada didalam jendela kliping. Dan vollpatial jika titik-titiknya melewati didalam jendela.

DAFTAR PUSTAKA

Referensi

Dokumen terkait

Kata “ syarat perlu “ mirip artinya dengan kata “ calon “, maksudnya bahwa untuk nilai x = b yang dipenuhi oleh salah satu dari kedua syarat itu memungkinkan untuk menjadi

Titik nol dari sistem koordinat terestris ini dapat berlokasi di titik pusat massa bumi (sistem koordinat geosentrik), maupun di salah satu titik di permukaan bumi (sistem

2. Tahap kedua member nilai awal untuk titik awal sama dengan nol dan yang lainnya tak terhingga. Tahap ketiga membentuk iterasi dari setiap percobaan kunjungan.. Langkah ini

Seperti diketahui, nilai nol suatu fungsi berkaitan dengan koordinat titik potong grafik. dengan

Apabila nilai F hitung lebih besar dari F tabel maka hipotesis nol ditolak yang artinya model yang tepat untuk regresi data panel adalah model Fixed Effect.. Hipotesis

Jika α = 0.10 maka diketahui nilai t (t tabel ) = 1.304 ; artinya bahwa jika t hitung &gt; t tabel maka significant, artinya dengan derajat kepercayaan 90% prestasi

Dari nilai b yang diperoleh tersebut dilakukan uji-t maka diperoleh hasil thit &gt; ttabel : tolak hipotesis nol (H0) (Nasoetion &amp; Barizi, 1980) dan diketahui

dan pengaruh Complaint Handling X2 terhadap Customer Satisfaction Y dengan hasil nilai signifikansinya sebesar 0.152 > 0.05 atau nilai T hitung degan T tabel -1443 < 1.98 artinya nilai