BENDA 3 DIMENSI

Preview:

DESCRIPTION

BENDA 3 DIMENSI. Grafika Komputer PS Teknik Informatika. 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 - PowerPoint PPT Presentation

Citation preview

BENDA 3 DIMENSIGrafika Komputer

PS Teknik Informatika

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 …

VERTEKS PENYUSUN KUBUS

Verteks x y z

0 -1 -1 +1

1 +1 -1 +1

2 +1 +1 +1

3 -1 +1 +1

4 +1 -1 -1

5 -1 -1 -1

6 -1 +1 -1

7 +1 +1 -1

Face v1 v2 v3 keterangan

F1.a 0 1 2 Depan

F1.b 0 2 3 Depan

F2.a 1 4 7 Kanan

F2.b 1 7 2 Kanan

F3.a 4 5 6 Belakang

F3.b 4 6 7 Belakang

F4.a 5 3 0 Kiri

F4.b 5 6 3 Kiri

F5.a 3 2 7 Atas

F5.b 3 7 6 Atas

F6.a 0 1 4 Bawah

F6.b 0 4 5 Bawah

PERMUKAAN KUBUS

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

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

Ilustrasi mengubah titik profile menjadi permukaan benda

SURFACE OF REVOLUTION

Algoritma menghitung lokasi verteks benda putar

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

Titik hasil pemutaran

SURFACE OF REVOLUTION

(a) Profile dan surface of revolution

(b) Lokasi titik-titik surface of revolution

SURFACE OF REVOLUTION

Benda putar dengan s1 = 0 ; s2 = 360 ;a = 20 dan modus solid

SURFACE OF REVOLUTION

Benda putar dengan s1 = 0 ; s2 = 360 ;a = 20 dan modus wireframe

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.

PARAMETRIC SURFACE - BOLA

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

PARAMETRIC SURFACE - BOLA

Permukaan yang merepresentasikan bola

PARAMETRIC SURFACE - BOLA

Hasil program bola dalam bentuk wireframe

PARAMETRIC SURFACE – BIDANG DATAR (PLANE)

Sebuah bidang dapat didefinisikan melalui tiga buah vektor c,a dan b

PARAMETRIC SURFACE – BIDANG DATAR (PLANE) 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

PARAMETRIC SURFACE – BIDANG DATAR (PLANE)

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)

PARAMETRIC SURFACE – BIDANG DATAR (PLANE) Algoritma untuk menghasilkan titik-titik yang terletak di sebuah

bidang

//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

Recommended