BAB VIII TOOLS UNTUK MENGGAMBAR 3D: POLYGON MESH & POLYHEDRA Pengertian Dasar    Polygonal Mesh Kumpulan polygon (“permukaan”) yang bersama-sama membentuk “kulit” dari suatu obyek. Dinyatakan dengan daftar.

Download Report

Transcript BAB VIII TOOLS UNTUK MENGGAMBAR 3D: POLYGON MESH & POLYHEDRA Pengertian Dasar    Polygonal Mesh Kumpulan polygon (“permukaan”) yang bersama-sama membentuk “kulit” dari suatu obyek. Dinyatakan dengan daftar.

BAB VIII
TOOLS UNTUK MENGGAMBAR 3D:
POLYGON MESH & POLYHEDRA
Pengertian Dasar



Polygonal Mesh
Kumpulan polygon (“permukaan”)
yang bersama-sama membentuk
“kulit” dari suatu obyek.
Dinyatakan dengan daftar poligonpoligon yang disertai dengan arah
dari permukaan tiap poligon.
Arah permukaan dinyatakan dengan
vektor normal.
Arah Vektor dari Permukaan Obyek
Vektor Arah untuk Suatu Permukaan (1)
Vektor Arah untuk Suatu Permukaan (2)


Arah permukaan dinyatakan dengan
vektor normal titik (verteks) dari
permukaan tersebut.
Contohnya



Untuk dinding kanan yang menghadap ke n1,
arah permukaannya dinyatakan dengan 4 titik
v1, v2,v3, dan v4.
Untuk sisi muka yang menghadap ke n2,
dinyatakan dengan titik v5.
Suatu titik dapat memiliki vektor arah
yang berbeda seperti titik v1 (vektor n1)
dan v5 (vektor n2).
Menyatakan Objek dengan Poligon
Mesh

Contoh
Daftar vertek dari obyek Gudang
(Vertexlist)
Daftar vektor normal dari obyek
Gudang (Vectorlist)
Daftar permukaan dari obyek Gudang
(Facelist)
Mencari/Menghitung Vektor Normal (1)


Untuk menghitung vektor normal
digunakan manipulasi cross product.
Cari tiga titik berturutan yang
merupakan titik dari permukaan
yang akan dicari normalnya,
misalnya v1, v2, dan v3, maka
vektor normal dari permukaan
tersebut adalah
m = (v1 – v2) x (v3 – v2)
Mencari/Menghitung Vektor Normal (2)

Cara sederhana ini menimbulkan
minimal dua kasus:


Kalau kedua garis (vektor) v1- v2 dan
v2 - v3 hampir berimpit maka hasil
cross product nya sangat kecil. Hal ini,
dalam komputasi akan menyebabkan
kesalahan pembulatan
Tidak semua bidang, datar, sehingga
perhitungan sederhana ini tidak dapat
mewakili semua keadaan.
Mencari/Menghitung Vektor Normal (3)

Metode Newell menghitung semua titik
dari permukaan yang akan dicari
normalnya dengan menghitung
komponen mx, my, mz, sebagai berikut :
N 1
m x   ( yi  y next(i ) )(z i  z next(i ) )
i 0
N 1
m y   ( z i  z next(i ) )(xi  xnext(i ) )
i 0
N 1
m z   ( xi  xnext(i ) )( yi  y next(i ) )
i 0
Mencari/Menghitung Vektor Normal (4)

N adalah jumlah verteks pada
permukaan yang dihitung, (xi, yi, zi )
adalah posisi verteks ke i, dan
next(j) = (j+1) mod N yaitu indeks
verteks berikutnya di sekitar
permukaan yang dihitung.
Contoh

Diketahui poligon dengan verteks
P0= (6,1,4), P1= (7,0,9),
P2=(1,1,2). Hitunglah normal dari
poligon tersebut dengan
menggunakan metode Newell.




Using simple cross product:
((7,0,9)-(6,1,4)) X ((1,1,2)-(6,1,4))
= (2,-23,-5)
Using Newell method, plug in values
result is the same:
Normal is (2, -23, -5)
Menggambar Obyek dengan
menggunakan PolyHedra

Polyhedra adalah mesh dari polygon
sederhana yang menutup ruang terbatas.
Dengan kata lain Polyhedron menyatakan
obyek padat tunggal. Dengan demikian :



Setiap sisi (edge) digunakan bersama oleh dua
muka.
Minimal tiga sisi bertemu pada tiap titik
(Vertex)
Permukaan-permukaan obyek tidak saling
menempel, kecuali pada sisi bersama.