Benda 3 Dimensi
Benda 3 Dimensi
ANATOMI BENDA 3 D
Benda 3 D disusun dari sekumpulan kulit (surface) yang dapat dibuat dari rangkaian polygon
ANATOMI BENDA 3D
Salah satu bentuk polygon yang digunakan adalah polygon segitiga selalu planar Perhatikan winding urutan dan arah verteks penyusun polygon Pengaruh winding dalam Open GL menampilkan benda 3 D
Arah verteks berlawanan jarum jam sebagai tampak depan Arah verteks searah jarum jam sebagai bagian belakang benda
ANATOMI BENDA 3D
Arah verteks (a) berlawanaan jarum jam (b) Searah jarum jam
MEMBUAT BENDA 3 D
Ada 3 cara: Manual Surface of Revolution Parametric surface
MANUAL
Disusun dengan menghubungkan sejumlah titik Kumpulan titik yang saling terhubung wireframe atau kerangka Contoh
PERMUKAAN KUBUS
v1 0 0 1
v2 1 2 4
v3 2 3 7
F2.b F3.a
F3.b F4.a F4.b F5.a F5.b F6.a F6.b
1 4
4 5 5 3 3 0 0
7 5
6 3 6 2 7 1 4
2 6
7 0 3 7 6 4 5
Kanan Belakang
Belakang Kiri Kiri Atas Atas Bawah Bawah
SURFACE OF REVOLUTION
Metode memperoleh permukaan benda dengan cara memutar verteks terhadap sebuah sumbu Contoh ..
Permukaan f1, f2, f3 diperoleh dari pemutaran titik v1,v2 terhadap sumbu sebesar sudut a
Titik v1 dan v2 disebut titik profile
SURFACE OF REVOLUTION
Apabila titik v1 (u,v) diputar terhadap sumbu putar sebesar a maka titik v (x,y,z) dapat diperoleh dengan rumus :
x = u * sin (a) y=v z = u * cos (a)
SURFACE OF REVOLUTION
SURFACE OF REVOLUTION
SURFACE OF REVOLUTION
Contoh Titik profile P1 = (1,0 ; 0,0), P2 = (1,0 ; 0,5) dan P3 = (0,3 ; 1,25) diputar dari 00 3600 dengan sudut putar a= 600. carilah titik-titik hasil pemutaran
SURFACE OF REVOLUTION
SURFACE OF REVOLUTION
(a)
(b)
SURFACE OF REVOLUTION
SURFACE OF REVOLUTION
PARAMETRIC SURFACE
Metode memperoleh permukaan benda berdasarkan rumus tertentu. Rumus umum : P(u,v) = (x(u,v), y(u,v), z(u,v)) dimana u dan v adalah parameter dengan nilai dari 0 sampai dengan 1.
Bola dapat direpresentasikan : x(u,v) = r sin (u) cos (v) y(u,v) = r cos (u) z(u,v) = r sin (u) sin (v) dengan u bergerak dari (a) 0 (180-a)0 sebesar a0 v bergerak dari 00 3600 sebesar b0
Sebuah bidang dapat didefinisikan melalui tiga buah vektor c,a dan b
Sebarang titik pada bidang dapat dibentuk dari rumus : x(u,v) = cx + axu + bxv y(u,v) = cy + ayu + byv z(u,v) = cz + azu + bzv Catt : untuk visualisasi, kita batasi u dan v dari 0 sampai 1
Contoh : Membuat sebuah plane ukuran 2 x 2 yang paralel dengan bidang x-z
Bidang yang paralel dengan bidang x-z dan berukuran 2 x 2 salah satu contohnya mempunyai titik-titik sudut : (1,0,1), (1,0,-1), (-1,0,1) dan (-1, 0, -1)
Jika diambil c (1, 0, -1) maka vektor a = (-2, 0, 0) dan vektor b = (0, 0, 2)
//a,b,c merupakan vektor 3 dimensi u=0,0 selama u <=1.00 kerjakan v = 0,0 selama v <= 1 kerjakan //hitung lokasi x,y,z untuk pasangan (u,v) x:= fc.x + fa.x * u + fb.x * v y:= fc.y + fa.y * u + fb.y * v z:= fc.z + fa.z * u + fb.z * v simpan verteks (x,y,z) v:= v + 0,1; akhir selama v<=1 u := u + 0,1; zkhir selama u < 1.0
HASIL PROGRAM