Note For GrafCit
Overview :
---○ berbasis vektor
○ Menggunakan model 2D/3D -> hasil realistik ○ Pembangkitan citra/ animasi 2D/ 3D
○ Mendeskripsikan objek dengan primitif dasar grafis Grafik :
-○ berbasis raster/ pixel
○ Mengolah data citra yang udah ada
Titik berat pada manipulasi citra sesuai dengan keperluan user ○
○ Berawal dari citra digital Citra :
-Raster Vektor
Jika di zoom jadi ancur Jika di zoom masih bagus
Mengunaan primitif( buat gari dll) dalam pembentukan citranya Komputer tidak tau objek apa yg ada Tau objek yg ada
-Perbedaan antar grafik dan citra
Garis :
---Y = mx + c; ○
Algoritma primitif : Dengan cara melakukan perhitungan matematis setiap akan memplot titik.
-Algotitma DDA : Ide dasarnya adalah pemetaan mengunakan nilai sebelumnya (menambahakan nilai m). Dapat mempercepat komputasi karena perhitungan matematis hanya dilakukan sekali.
-Nilai pemetaan selanjutnya tergantung nilai m. -Xk = xk + 1; □ Jika 0<m<1 : yk = yk + m; ○ Yk = yk + 1; □ Jika m>1 : xk = xk + 1/m ○ Ex:
-Algoritma Brasenham ; idenya hampir smaa dengan DDA hanya saja d=disini kita menggunakan asumsi bahwa titik akan dplot hnay pada 2 kemungkinan. Yang penentuanya plotnya ditentukan oleh decesion parameter.
----> yi + 1 Secara mamtematis : Y(i+1) ----> yi
Screen clipping taken: 22/10/2011 13:45 Algoritma pembuatan Garis ada 3 :
---Bagian lingkaran hanya dibentuk pada kuadran 1 saja, setelah itu akan dilakukan pencerminan.
-Langkah pembuatan lingkaran ini hampir sama dengan pembuatan garis pada breserham dimana sama2 mengunakan decision parameter.
-Screen clipping taken: 22/10/2011 13:44 Eleips :
---Alggoritma Polar : menggunakan perhitungan sudut dalam pembuatannya
Hampir sama dengan lingkaran hanya saja pembetukan garis dilakukan pada 2 region(oktan 1 dan oktan 2) pada kuadran 1. setelah itu dilakukan pencerminan.
-Dalam plotingnya mengunakan parameter jg.
-Screen clipping taken: 22/10/2011 13:48 Midpoint elips :
Filling :
---Dimulai dari kiri atasa layar. ○
Bergerak kekanan ○
Algoritma akan gagal jika menenmukan titik ujung yang berdempetan.
Kelemahan : ○
Scan Line :
Screen clipping taken: 22/10/2011 13:56
Warna ditentukan berdasarkan titik awal ○
Kemudian semua titik tetangga diuji dengan warna batas dan warna fill. ○
4-connected
8-connected
Screen clipping taken: 22/10/2011 13:58 Ada 2 metode :
○
Boundary Fill :
-Prosesnya hampir sama dengan boundary, hanya saja dalam pemwarnaannya warna akan diberikan jika warna dari pexel tersebut sama dengan warna asal dari titik yang pertama kali difill.
○
Screen clipping taken: 22/10/2011 14:01 Flood Fill :
-Kurva Bezier : ---Menggunakan titik kontrol in betweening
Screen clipping taken: 24/10/2011 19:07
Membuat kurva sejalan dengan algo de casteljau namun dapat dimengerti secara fungsionalanya ○
Screen clipping taken: 24/10/2011 19:09 Rumus kurva bezier
○
Screen clipping taken: 24/10/2011 19:16 Po merupkaan titik
Jumlah titik = 1/ deltaT + 1 - Kurva Bezier Transformasi : ---x' = x + t y' = y + t
Mengubah posisi dari titik : ○
Translasi
-Mengubah posisi objek perpindahannya sesuai jalur sirkular ○
Variable yang diperlukan: Rotasi
Sudut rotasi
Titik tumpu rotasi
Variable yang diperlukan: ○
Positif : putaran berlawanan arah jam
Negatif : putaran searah jarum jam
Sudut : ○
Rumus : ○
Screen clipping taken: 22/10/2011 14:19
Screen clipping taken: 22/10/2011 14:19
Transformasi yang hanya mengubah posisi objek tanpa mengubah bentuknya ○ Translasi rotasi Transformasi dasar: ○ Rigid-Body transformation
-Mengubah ukuran objek( perbesar/perkecil) ○ Faktor penskalaan Titik acuan Variable ; ○ Uniform sx=sy Differental sx!=sy Jenis : ○ Scaling
-Memudahkan perhitungan transformasi ○
Setiap titik direpresentasikan sebagai vektor kolom ○
Reperesentasi transformasi dalam Matriks :
-Clipping : ---Clippinntg : memotong objek dengan bentuk tertentu
Sarana : clipping window
Menentukan letak suatu titik terhadap clipping window
Tidak terlihat/ terletak di luar window ○
Invisible : 1.
Terletak di dalam clipping window ○
Visible : 2.
Terpotong sebagian oleh clipping windows ○
Halfpartial : 3.
Terpotong penuh oleh clipping windows ○
Screen clipping taken: 24/10/2011 13:37 Vollpartial :
4.
Kondisi garis yang ada :
Mengecek titik awal dan titik akir dari garis terhadap titik window dengan bantuan pointcode l,r,t,b yang megacu pada sisi garis
a.
Screen clipping taken: 24/10/2011 13:52 Point code :
1.
Melakukan clipping dengan cara membagi garis menjadi 2 bagian sampai dengan menemukan titik temu terhadap garis window.
a.
Midpoint subdivision 2.
Screen clipping taken: 24/10/2011 13:52
Pengantar Grafik 3D : ---Sistem koordianat 3D
-Representasi dan Rendering Objek 3D
-Materi :
Menggunakan 3 arah kordinat x, y, z
-Direpresentasikan dengan koordinat x,y,z
Titik ○
Direpresentasikan dengan koordinat x1,y1,z1 dan x2,y2,z2
Screen clipping taken: 24/10/2011 13:59 Garis
○
Bidang datar direpresentasikan dengan rumus Ax + By + Cz + D = 0 Bidang ○ Bola ○ Kubus ○ Silinder ○ Kerucut ○ Cincin dll ○
Primitif yang ada ;
-Sistem koordianat 3D
Suatu objek langsung dapat direpresentasikan menggunakn persamaan geometrinya
□
Screen clipping taken: 24/10/2011 14:03 Misal membuat bola :
Atau dengan rumus : Persamaan geometri ○ Direpresentasikan mengunakan : -Representasi Objek 3D
Adalah membentuk suatu objek dengan jalan menggabungkan atau memotong dari beberapa objek primitif 3D Defference □ Union □ Intersect □ Misal : Contoh :
Screen clipping taken: 24/10/2011 14:06 Constuctive solid geometry (CSG)
○
Mengabungakan bentuk kurva dengan permukaan bezier
Contoh :
Screen clipping taken: 24/10/2011 14:08 Kurva dan permukaan Bezier
○
Contoh :
Lathe Objek ○
Screen clipping taken: 24/10/2011 14:09
Contoh ;
Screen clipping taken: 24/10/2011 14:09 Fractal
○
Rendering adalah proses mencetak citra 2D dari data 3D
-Bertujuan memberikan visualisasi 3D pada monitor 2D
-Objek 3d dideskripsikan sebagai objek tanpa permukaan
Pembentukan objek mengunakan garis2 yang mengambarkan sisi edges dari objek
Proses sangat cepat □
Kelebihan :
Tidak ada permukaan yang jelas □
Kekurangan :
Wirefame rendering ○
Mengunakan fakta bahwa dalam sebuah objek, terdapat permukaan yang tidak terligat atau permukaan yang tertutup oleh permukaan lainnya
Masih direpresentasikan mengunakan garis2
Permukaan sedikit lebih kelihatan dari pada wf □
Kelebihan :
Tidak dapat menampilkan karakteristik dari objek misal warna, kilauan. □
Kelemahan
Hidden line rendering ○
Melakukan perhitungan baik cahaya, karakteristik permukaan, shadow casting
Menghasilkan citra yang realistik □
Kelebihan :
Waktu rendering yang lama □ Kelemahan : Shaded rendering ○ Geometri □ Kamera □ Cahaya □
Faktor yang di perhitungkan : Rendering 3D to 2D: ○ Cara rendering : -Rendering Objek 3D
Mengambarkan sudut pandang kita terhadap kamera. □
Lokasi kamera dalam titik (x,y,z)
Arah pandang kamera dalam titik (x,y,z)
Faktor pengaruh kamera ; □
Merupakan daerah yang terlihat oleh kamera
Menentukan bagian mana yang memerlukan perhitungan rendering
Field of view : □
Kamera :
Membuat ofjek menjadi lebih realistik □
Memancar kesegala arah, namun intesitas cahaya tergantung dari posisi sumber cahaya : mirip lampu pijar dalam dunia nyata.
◊ Point light
Memancarkan cahaya kedaerah tertentu. Berbentuk kerucut. Hanya objek2 pada daerah kerucut yang akan terlihat. Seperti lampu sorot dalam dunia nyata.
◊ Spotlight
Cahaya latar. Diterima secara seragam oleh objek. ◊
Ambient light
Area light
Memancarkan cahaya dengan intensitas sama ke suatu arah tertentu. Letak tidak
mempengaruhi intensitas cahaya. Dapat menimbulkan effek bahwa sumber cahaya sangat jauh dari objek.
◊
Directional light
Sama dengan directional namun cahaya ini memiliki arah dan posisi. ◊
Parallel point
Jenis - jenis sumber cahaya : □
Model dari pencahaayan ini digunakn untuk menghitung intensitas cahaya yang diterima oleh setiap permukaan benda. □ Lokasi Intensitas Warna
Cahaya dimodelkan dengan : □
Cahaya :
Karakteristik dari permukaan objek adalah sifat dari permukaan sebuah objek □
dipengaruhi oleh warna asli dan cahaya. ◊
Warna
Direpresentasikan oleh sebuah file yang menjadi tekstur dari objek. Dipengaruhi oleh letak tekstur, sifat, dan perulangan pada tekstur.
◊ Tekstur kekasaran, refleksitifitas ◊ Sifat permukaan Karakteristik meliputi : □ Karakteristik permukaan :
Berati program melihat dari setiap pixel satu per satu secara horisontal dan menghitung warna dari pixel.
Kebanyakan algoritma rendering yang ada saat ibi mengunakan pendekatan scan-line rendering : □ Ray-Casting Ray-tracing Radiosity
3 algoritma yang ada : □
Ray - Casting Ray - Tracing Radiosity
Perbedaan □
Algoritma rendering :
Ray - Casting Ray - Tracing Radiosity Menembakkan sinar
untuk mengetahui warna dari cell
Menelusuri sinar secara terbalik untuk mengetahui warna dari sebuah pixel
Membagi bidang menjadi bidang yang lebih kecil untuk
menentukan warna. Mengunakan metode
sampling untuk menampilkan hasil
Tidak mengunakan sampling Tidak mengunakan sampling
Biasanya dimodifikasi sesuai kebutuhan
Tidak dapat dimodifikasi Tidak dapat dimodifikasi Memiliki constrain
geometrik tertentu
Tidak ada konstrain Tidak ada konstrain
Waktu rendering cepat Lamabat Sangat lambat
Digunakan untuk visualisasi secara cepat
Untuk hasil akir Hasil akir
Dapat digunakan untuk outdor dan indor scane
Out dan in Indoor saja
Hasil rendering terlihat kotak2
Hasil rendering sangat realistik Sangat realistik
Screen clipping taken: 24/10/2011 19:28 - Translasi
Screen clipping taken: 24/10/2011 19:29 - Rotasi
Scaling
---View : --- Menentukan posisi kamera
- Arah pandang kamera - Cahaya masuk
Scane dicrop dengan window
-Diproyeksikan ke film
-View = memotret
Melihat objek dari berbagai sudut pandang ○ Mengubah arah N dengan view reference point tetap
Menggeser kamera
Mengubah view reference point dengan arah N tetap ○
Menggerakkan kamera :
- Mencari perpotongan antara garis proyeksi dengan view plane
Proyeksi titik pada objek diproyeksikan ke viewplane mengikuti garis paralel.
Screen clipping taken: 24/10/2011 19:55 Paralel : orthagrafik
□
Posisi objek diproyeksikan ke viewplane mengikuti garis yang konvergen ke satu titik.
Screen clipping taken: 24/10/2011 19:56 Perspektif □ Clipping 3D □ Menggunakan : Memetakan objek 3D ke 2D ○ Proyeksi :
Screen clipping taken: 24/10/2011 19:59
Dispesifikasikan dengan fungsi linier parametrik ◊
◊ Objek to image space mapping dilakukan dengan transformasi: viewing - projection Ukuran textur tidak sesuai dengan objek sehingga diperlukan perhitungan pemotongan Kekurangan : ◊ Foward mapping Interpolasi bilinear ◊ ◊
Screen clipping taken: 24/10/2011 20:06 Memetakan titik dari patern ke titik di objek
Memanfaatakan permukaan antara ◊
Inverse mapping
◊ Cara ccepat untuk rendering objek mengkilat ◊ Contohnya mengunakan cubic mapping
Screen clipping taken: 24/10/2011 20:10 Environment mapping
◊ Membuat permukaan berkerut tanpa harus memodelkan secara geometris Bump mapping
- Ada 2 caara mapping ; Texture Mapping
Mengurangi effek aliasing
◊ Mencuplikkan image pada f(i,j) untuk tiap pixel (i,j) ◊ Mengunakan intensitas rata2 pada pixel (i,j) Cara sederhana ;
◊ Pre-filtering
Screen clipping taken: 24/10/2011 20:16
◊ No filtering ◊ Post filtering Opsi anti -aliasing :