Anda di halaman 1dari 7

TRANSFORMASI 3D

OLEH :
KELOMPOK 3
RAMA PRADANA (1414370071)

PRODI SISTEM KOMPUTER


FAKULTAS ILMU KOMPUTER
UNIVERSITAS PEMBANGUNAN PANCA BUDI
MEDAN
2016

3D TRANSFORMASI
Transformasi ini dapat berupa trasformasi dasar ataupun gabungan dari berbagai
transformasi geometri. Contoh trasformasi geometri adalah translasi, penskalaan, putaran
(rotasi), balikan, shearing dan gabungan. Transformasi ini dikenal dengan transformasi affine.
Pada dasarnya, transformasi ini adalah memindahkan objek tanpa merusak bentuk. Satu contoh
transformasi adalah transformasi dari jendela (window) ke viewport. Disini kita telah melihat
citra dalam jendela dunia diskala dan dipindahkan ke jendela viewport. Dalam bagian ini akan
dibahas transformasi objek 2D dan 3D yang terdiri dari translasi, skala, putar(rotasi) dan
shearing.
Transformasi dapat dilakukan dengan dua operasi, yaitu operasi matrik, dan operasi vektor.
Tujuan Transformasi Adapun tujuan dari transformasi, yaitu :
1. Merubah atau menyesuaikan komposisi pemandangan.
2. Memudahkan membuat objek yang simetris.
3. Melihat objek dari sudut pandang yang berbeda.
4. Memindahkan satu atau beberapa objek dari satu tempat ke tempat lain, ini biasa dipakai
untuk animasi komputer.
3D ( 3 Dimensi ) adalah bentuk dari benda yang memiliki panjang, lebar, dan tinggi.Grafik 3
Dimensi merupakan teknik penggambaran yg berpatokan pada titik koordinat sumbu x(datar),
sumbu y (tegak), dan sumbu z (miring). Representasi dari data geometrik 3 dimensi sebagai hasil
dari pemrosesan dan pemberian efek cahaya terhadap grafika komputer 2D. Tiga Dimensi,
biasanya digunakan dalam penanganan grafis. 3D secara umum merujuk pada kemampuan dari
sebuah video card (link). Grafik 3D merupakan perkembangan dari grafik 2D. Didalam grafika
komputer, 3D merupakan bentuk grafik yang menggunakan representasi data geometri tiga
dimensi. Suatu objek rangka 3D apabila disinari dari arah tertentu akan membentuk bayangan
pada permukaan gambar. Proses pembuatan grafik komputer 3D dapat dibagi ke dalam tiga fase,
yaitu 3D modeling yang mendeskripsikan bentuk dari sebuah objek, layout dan animation yang
mendeskripsikan gerakan dan tata letak sebuah objek, dan 3D rendering yang memproduksi
image
dari
objek
tersebut.
Istilah atau Pengertian Grafik 3D adalah sebuah gambar,garis,lengkungan,dan sebagainya yang
memiliki titik-titik yang menghubungkan menjadi sebuah bentuk 3D. Di dalam dunia game, 3D
secara umum merujuk pada kemampuan dari sebuah video card (link). Saat ini video card
menggunakan variasi dari instruksi-instruksi yang ditanamkan dalam video card itu sendiri
(bukan berasal dari software) untuk mencapai hasil grafik yang lebih realistis dalam memainkan
game komputer.

Macam-macam objek 3 dimensi:

Box
Box adalah sebuah objek 3 dimensi yang terbuat dari kumpulan objek 2 dimensi, maksudnya
sebuah box merupakan kumpulan dari sebuah bidang persegi yang saling dihubungkan satu sama
lain.

Sphare
Sphare atau bola merupakan suatu objek 3 dimensi yang awalnya terbentuk dari kumpulan
circle-cirle yang tak terhingga menjadi satu, Sehingga membentuk sebuah bola.

Cyllinder
Cylinder merupakan objek 3 dimensi yang awalnya terbentuk dari lingkaran yang memiliki
ukuran panjang. Jadi pada cylinder terdapat ukuran jari-jari,diameter dan tinggi.

5.
A. CONTOH PROGRAM TRANSFORMASI 3D
Dalam sintaks berikut ini terdapat fungsi transformasi dimana memiliki fungsi agar objek
dapat berpindah dari satu lokasi ke lokasi yang lain, memperbesar ukuran dalam satu window
yang sama, dimana parameter yang pertama merupakan tolak ukur sumbu x dan parameter yang
kedua merupakan tolak ukur sumbu y dan parameter ketiga sumbu z. Berikut ini merupakan
penulisan sintaks menggunakan alat bantu processing:

Listing 1. Transformasi 3D Bounce Ball


int size = 40;
// Lebar bentuk
float xpos, ypos, zpos; // Mulai posisi bentuk
float depth;
float xspeed = 2.5; // kecepatan bentuk
float yspeed = 2; // kecepatan bentuk
float zspeed = 3;
int xdirection = 1; // kiri atau kanan
int ydirection = 1; // atas atau bawah
int zdirection = 1; // depan atau belakang

void setup()
{
size(400, 400, P3D);
noStroke();
frameRate(30);
smooth();
// mengatur posisi awal
xpos = width/2;
ypos = height/2;
zpos = -height/2; // Dicatat bahwa ZAXIS masuk 'ke dalam' layar
depth = -height;
}
void draw()
{
background(102);
lights();
//kotak kaca
stroke(255);

//note: garis(x1, y1, z1, x2, y2, z2)

//kembali
line(0,0,depth, width,0,depth);
line(0,height,depth, width,height,depth);
line(0,0,depth, 0,height,depth);
line(width,0,depth, width,height,depth);
//sudut
line(0,0,0, 0,0,depth);
line(0,height,0, 0,height,depth);
line(width,0,0, width,0,depth);
line(width,height,0, width,height,depth);

// Update posisi dari bentuk


xpos = xpos + ( xspeed * xdirection );
ypos = ypos + ( yspeed * ydirection );
zpos = zpos + ( zspeed * zdirection );
// Uji untuk melihat apakah bentuk melebihi batas layar
// Jika tidak, membalikkan arahnya dengan mengalikan dengan -1
if (xpos > width-size || xpos < 0) {
xdirection *= -1;
}
if (ypos > height-size || ypos < 0) {
ydirection *= -1;
}
if (zpos < -height-size || zpos > 0) { // perhatikan bahwa ZAXIS masuk 'ke
dalam' layar
zdirection *= -1;
}
// Menggambar bentuk
lights();
translate(xpos, ypos, zpos);
sphere(size);
}

Hasil program setelah di run :

Penjelasan :
a. Pada Hal Ini float x speed digunakan untuk mengatur kecepatan :
float xspeed = 2.5;
float yspeed = 2;
float zspeed = 3;
b. Pada Hal ini syntax berikut digunakan untuk mengatur tata letak atau pergerakan
object yang bertransformasi
xpos = xpos + ( xspeed * xdirection );
ypos = ypos + ( yspeed * ydirection );
zpos = zpos + ( zspeed * zdirection );
c. Pada hal ini syntax berikut digunakan untuk menguji dan untuk melihat apakah
bentuk melebihi batas layar, Jika tidak, membalikkan arahnya dengan mengalikan
dengan -1
if (xpos > width-size || xpos < 0) {
xdirection *= -1;
}

if (ypos > height-size || ypos < 0) {


ydirection *= -1;
}
if (zpos < -height-size || zpos > 0) {
zdirection *= -1;
}

Anda mungkin juga menyukai