Top Banner

of 12

Makalah Komputer Grafik

Jul 08, 2018

Download

Documents

Dedik Ariyanto
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 8/19/2019 Makalah Komputer Grafik

    1/26

    MAKALAH KOMPUTER GRAFIK  

    “TRANSFORMASI 2D & TRANSFORMASI 3D” 

    DOSEN : NAHOT FRASTIAN M. KOM 

    DISUSUN OLEH : 

    1.   201143501231 MEIKA HARMANI 

    2.   201143501260 MAULANA ISHAQ 

    3.   201143501220 AHMAD LUTFHI 

    UNIVERSITAS INDRAPRASTA PGRI 

    FAKULTAS TEKNIK MATEMATIKA DAN IPA 

    TEKNIK INFORMATIKA 

    2014 

  • 8/19/2019 Makalah Komputer Grafik

    2/26

     

    DAFTAR ISI 

    Bab I Alasan Pemilihan Judul……………………………1 

    Bab II Latar Belakang…………………………………….2 

    Bab III Pembahasan……………………………………...4 

    Translasi …………………………………………………4 

    Skala……………………………………………………….6 

    Rotasi……………………………………………………...8 

    Kesimpulan……………………………………………….22 

  • 8/19/2019 Makalah Komputer Grafik

    3/26

     

    BAB I 

    ALASAN PEMILIHAN JUDUL 

    Dengan adanya mata kuliah computer grafik, penulis sangat terbantu

    dalam upaya penyempurnaan visual / penggambaran atas program yang

    akan dibuat nantinya oleh penulis. Penulis berpendapat bahwa hal

    mendasar dalam mempelajari computer grafik yakni mengerti dan

    memahami konsep transformasi komposisi 2D maupun 3D. Atas dasar hal

    tersebut, penulis memilih tema Transformasi Komposisi 2D dan

    Transformasi 3D ini. 

  • 8/19/2019 Makalah Komputer Grafik

    4/26

    BAB II LATAR BELAKANG 

    P er ke mb an ga n i lm u p en ge ta hu an d an t ek no lo gi s aa t i ni s an ga tl ah 

    p esa t. D im an a s et ia p g er ak- ge ri k d an l iku -l iku k eh id up an i ni sa ng at 

    d ip en ga ru hi o le h a da nn ya i nf or ma si y an g k em ud ia n i nf or ma si i tu d ap at 

    diperoleh melalui ilmu pengetahuan dan teknologi.

    Komputer merupakan salah satu teknologi yang paling pesat 

    pe rkemba nga nnya. Pa da sa at p ertama kali ditemukan , kompu te r     

    d ig u na ka n t er ut am a s eb a ga i a la t b a nt u u nt uk m em pe r ce p at p r os es h it un g 

    menghitung. Komputer dari generasi ke generasi mengalami 

    pe rkemba nga n d alam hal pen gola han data ba ik kapa sitas maup un 

    k ec ep a ta n ny a. D at a y an g d io l ah t id ak h an ya b e ru p a t ek s a ta u a n gk a, t ap i 

    k in i k om pu te r d a pa t m e ng o la h g am b ar /g r af ik a. K om p ut er y an g m e mi li ki 

    piranti grafis untuk mengolah gambar atau grafika disebut grafis komputer. 

    G ra fi ka k om p ut er p a da d a sa r ny a a d al a h s ua tu b id a ng k om pu te r y an g 

    m e mp e l aj a r i c a ra - ca r a u n t uk m e n in g ka t ka n d a n m e m ud a h ka n k o mu n ik a si 

    a n ta r a m an u si a d en g an m es in ( ko mp u te r) d e ng a n j al a n m em b an g ki tk an , 

    m en yi mp a n d a n m em a ni pu la si g a mb a r m od e l s ua tu o bj e k m e ng g un a ka n 

  • 8/19/2019 Makalah Komputer Grafik

    5/26

    k o mp u te r . G r a fi k a k o mp u t er m e mu n g ki n ka n k i ta u n tu k b e r ko m un i ka s i l e wa t 

    gambar-gambar, bagan-bagan dan diagram. 

    G ra fi ka k om pu te r ( in gg ri s: c om pu te r g ra ph ic s) a da la h b ag ia n d ar i y a ng b e r ka i ta n d e n ga n p e m bu a t an d a n m a ni p u la s i g a mb a r ( v is u a l) s e ca r a 

    d ig i ta l . B en tu k s ed er h an a d ar i g r af ik a k om p ut er a da l ah g r af ik a k om pu te r     

    2 D y a ng k e mu d ia n b e r ke m b an g m e n ja d i g r a fi k a k o mp u te r 3 D , p e mr o s es a n 

    c i tr a ( i ma g e p r o ce s si n g ) d a n p e n ge n a la n p o l a ( p a tt e r n r e co g n it i on ) . G r a fi k a 

    komputer sering dikenal juga dengan istilah visualisasi data.

    G rafis komp uter ada lah su atu b idan g ilmu ya ng mempe lajar i bagaimana membangun grafik (gambar) baik 2D maupun 3D yang 

    k e li h a ta n n y at a d e n ga n m e ng g u na k an k o mp u te r . S a la h s a tu b i da n g g r a fi k a 

    k om pu te r y an g s an g at t er ke na l a da l ah d es ai n g ra fi s ( Na na R am ad ij a nt i) . 

    K om pu te r g ra fi s 2 D a da la h g en er as i k om pu te r b er ba si s g am ba r d ig it al . 

    K o mp u t er g r a fi s 2 D t e r ut a ma d i g un a ka n d a l am a p l ik a si y a n g p a d a a w a ln y a 

    dikembangkan pada saat pencetakan tradisional dan teknologi m en g ga m ba r s ep e rt i k ar to g ra fi , g a mb a r t ek ni k, i kl an d a n l ai n- la i n. D al am 

    a pl ika si , g amb ar 2 D b uk an h an ya d ar i o bj ek d un ia n ya ta t et ap i a rt ef ak 

    i nd e pe n de n d en g an n il ai t am ba h p e mb u at ny a. K om p ut er g r af is 3 D a d al ah 

    r e pr e se n ta si d a ri d at a g e om et ri k 3 d im e ns i s eb a ga i h a si l d a ri p e mr os es an 

    da n pe mber ian efek ca haya ter had ap gra fika komp uter 2D. Hasil ini 

    k ad an g k al a d it am pi lk an s ec ar a w ak tu n ya ta ( re al t im e) u nt uk k ep er lu an animasi.

  • 8/19/2019 Makalah Komputer Grafik

    6/26

     

    BAB III 

    PEMBAHASAN 

    TRANSFORMASI TRANSLASI , SKALA & ROTASI PADA APLIKASIPROCESSING 

    1. TRANSLASI 

    Translasi Adalah memindahkan suatu objek sepanjang garis lurus dari

    suatu lokasi koordinat tertentu ke lokasi yang lain. Pada proses translasiKoordinat baru titik yang ditranslasi dapat diperoleh dengan menggunakan

    rumus : 

    x’ = x + tx 

    y’ = y + ty 

    Dimana 

    (x, y) = koordinat asal suatu objek 

    (x’, y’) =koordinat baru objek setelah ditranslasi. 

    Tx = translasi vector sumbu x 

    Ty = translasi vector sumbu y 

    Berikut aialah contoh penggunaan translasi pada aplikasi processing: 

    Untuk menggambarkan translasi suatu objek yang berupa segitiga dengankoordinat A(10,10), B(30,10), dan C(10,30) dengan translation vector

    (10,20). 

  • 8/19/2019 Makalah Komputer Grafik

    7/26

    Titik A(10,10) 

    X’= x+tx = 10+10= 20 

    Y’= y+ty = 10+20=30 kordinat baru A’= (20,30) 

    Titik B(30,10) 

    X’=x+tx=30+10=40 

    Y’=y+ty=10+20=30 koordinat baru B’=(40,30) 

    Titik C(10,30) 

    X’=x+tx=10+10=20 

    Y’=y+ty=30+20=50 koordinat baru B’=(20,50) 

    Coding untuk translasi pada aplikasi processing= 

    void setup() 

    size(300,200); 

    background (125); 

    noStroke(); 

    fill(230); 

    triangle(10, 10, 30, 10, 10,

    30); 

    fill(0,0,115,125); 

    pushMatrix(); 

    translate(10,20); 

  • 8/19/2019 Makalah Komputer Grafik

    8/26

    triangle(20, 30, 40, 30, 20, 50); 

    popMatrix(); 

     Adapun hasilnya ialah 

    2. Skala 

    Transformasi skala adalah perubahan ukuran suatu objek. Koordinat baru

    diperoleh dengan melakukan perkalian nilai koordinat dengan skala factor,

    yaitu (sx,sy) dimana 

    sx = skala factor untuk sumbu x 

    sy = skala factor untuk sumbu y. 

    Koordinat baru titik yang diskala dapat 

    diperoleh dengan 

    x’ = x . sx 

    y’ = y . sy 

    Berikut aialah contoh penggunaan transformasi skala pada aplikasiprocessing: 

    Untuk menggambarkan skala suatu objek yang merupakan segi empat

    dengan koordinat A(10,10), 

    http://lh3.ggpht.com/-m9aDpP8K8Pk/T40Kff8ch-I/AAAAAAAAACY/FY_QV7rLRhs/s1600-h/clip_image004%255B3%255D.jpghttp://lh3.ggpht.com/-m9aDpP8K8Pk/T40Kff8ch-I/AAAAAAAAACY/FY_QV7rLRhs/s1600-h/clip_image004%255B3%255D.jpg

  • 8/19/2019 Makalah Komputer Grafik

    9/26

    B(30,10), C(30,20), D(10,20) diskala dengan skala factor (3,2). 

    Koordinat A(10,10) 

    X’= x.sx=10.3=30 

    Y’= y.sy=10.2=20 A’(30,20) 

    Koordinat B(30,10) 

    X’= x.sx=30.3=90 

    Y’= y.sy=10.2=20 B’(90,20) 

    Koordinat C(30,20) 

    X’= x.sx=30.3=90 

    Y’= y.sy=20.2=40 B’(90,40) 

    Koordinat D(10,20) 

    X’= x.sx=10.3=30 

    Y’= y.sy=20.2=40 B’(30,40) 

    Coding pada aplikasi processing: 

    void setup() 

    size (400,200); 

    background (125); 

    stroke(100); 

    fill(230); 

  • 8/19/2019 Makalah Komputer Grafik

    10/26

    quad(10, 10, 30, 10, 30, 20, 10, 20); 

    stroke(1); 

    pushMatrix(); 

    scale(3.2); 

    fill(12); 

    quad(30, 20, 90, 20, 90, 40, 30, 40); 

    popMatrix(); 

    Berikut Ialah Hasilnya:  

    3. ROTASI 

    Rotasi dua dimensi pada suatu objek akan memindahkan objek tersebut

    menurut garis melingkar. Untuk melakukan rotasi diperlukan sudut rotasi 6

    dan pivot point(xp,yp). Nilai positif dari sudut rotasi menentukan arah rotasiberlawanan dengan arah jarum jam. Sedangkan sudut rotasi negative

    memutar objek searah dengan jarum jam. 

    Rotasi suatu titik terhadap pivot point (xp, yp) menggunakan bentuktrigonemetri, sebagai berikut : 

    x’ = x + (x – xy ) cos θ – (y – yp ) sinθ  

    y’ = yp + (x – xp) sin θ + (y – yp) cos θ  

    http://lh3.ggpht.com/-RTAlolUrxAI/T40KkhkrZ_I/AAAAAAAAAC0/LwaTa5rap54/s1600-h/clip_image008%255B3%255D.jpghttp://lh3.ggpht.com/-RTAlolUrxAI/T40KkhkrZ_I/AAAAAAAAAC0/LwaTa5rap54/s1600-h/clip_image008%255B3%255D.jpg

  • 8/19/2019 Makalah Komputer Grafik

    11/26

    Berikut ini ialah contoh rotasi pada aplikasi processing: 

    Untuk menggambarkan rotasi suatu objek yang berupa segitiga dengan

    koordinat A(10,10), B(30,10), dan C(10,30) dengan sudut rotasi30 0  terhadap titik pusat koordinat Cartesian (10,10). 

    Titik A (10, 10) 

    X’= Xp + (X - Xp) cos(30 0) - (Y-Yp) sin(30 0) 

    = 10 + (10 – 10) 0,9 – (10 – 10) 0,5 

    = 10 + 0 – 0 = 10 

    Y’= Yp + (X-Xp) sin(30

    0

    ) + (Y-Yp) cos(30

    0

    = 10 + (10 – 10) 0,5 + (10 – 10) 0,9 

    = 10 + 0 – 0 = 10 

    Hasil rotasi titik A’ (10, 10) 

    Titik B (30, 10) 

    X’= Xp + (X - Xp) cos(30

    0

    ) - (Y-Yp) sin(30

    0

    = 10 + (30 – 10) 0,9 – (10 – 10) 0,5 

    = 10 + 18 – 0 = 28 

    Y’= Yp + (X-Xp) sin(30 0) + (Y-Yp) cos(30 0) 

    = 10 + (30 – 10) 0,5 + (10 – 10) 0,9 

    = 10 + 10 – 0 = 20 

    Hasil rotasi titik B’ (28, 20) 

    Titik C (10, 30) 

    X’= Xp + (X - Xp) cos(30 0) - (Y-Yp) sin(30 0) 

  • 8/19/2019 Makalah Komputer Grafik

    12/26

      = 10 + (10 – 10) 0,9 – (30 – 10) 0,5 

    = 10 + 0 +10 = 20 

    Y’= Yp + (X-Xp) sin(30 0) + (Y-Yp) cos(30 0) 

    = 10 + (10 – 10) 0,5 + (30 – 10) 0,9 

    = 10 + 0 + 18 = 28 

    Hasil rotasi titik C’ (20, 28) 

    Coding untuk rotasi pada processing : 

    void setup() 

    size(100,100); 

    background (125); 

    noStroke(); 

    fill(230); 

    triangle(10, 10, 30, 10, 10,

    30); 

    fill(0,0,115,125); 

    pushMatrix(); 

    rotate(radians(30)); 

    triangle(10, 10, 28, 20, 20,

    28); 

    popMatrix(); 

  • 8/19/2019 Makalah Komputer Grafik

    13/26

    Hasil tampilan gambar. 

    Grafik 2D 

    Grafik 2 dimensi adalah sekumpulan titik yang dihubungkan dengan garislurus, baik berupa polyline, polygon atau kurva. Definisinya adalah

    kumpulan titik titik yang secara komputasi di nyatakan sebagai array 1D,

    atau linkedlist sesuai dengan struktur data yang digunakan dalam

    menyatakan kumpulan titik 2D. 2D ini hanya mempunyai 2 sumbu titik yaitu

    X dan Y. 

    Beberapa bentuk model pada objek 2D, Yaitu : 

    ●   Line (Garis) 

    Pengertian garis menurut Leksikon Grafika adalah benda dua dimensi tipis

    memanjang. Sedangkan Lillian Gareth mendefinisikan garis sebagai

    sekumpulan titik yang bila dideretkan maka dimensi panjangnya akan

    tampak menonjol dan sosoknya disebut dengan garis. Terbentuknya garis

    merupakan gerakan dari suatu titik yang membekaskan jejaknya sehingga

    http://doniavira.wordpress.com/2012/12/03/design-permodelan-grafik-objek-2dlinecirclearc-polygon/images-5/#mainhttp://doniavira.wordpress.com/2012/12/03/design-permodelan-grafik-objek-2dlinecirclearc-polygon/images-5/#mainhttp://lh6.ggpht.com/-ru2A1uypa8k/T40KqheW9-I/AAAAAAAAADY/bl-WDDCQXQ0/s1600-h/clip_image010%255B3%255D.jpghttp://lh6.ggpht.com/-ru2A1uypa8k/T40KqheW9-I/AAAAAAAAADY/bl-WDDCQXQ0/s1600-h/clip_image010%255B3%255D.jpg

  • 8/19/2019 Makalah Komputer Grafik

    14/26

    terbentuk suatu goresan. Untuk menimbulkan bekas, biasa

    mempergunakan pensil, pena, kuas dan lain-lain. Bagi senirupa garis

    memiliki fungsi yang fundamental, sehingga diibaratkan jantungnya

    senirupa. Garis sering pula disebut dengan kontur, sebuah kata yang

    samar dan jarang dipergunakan. 

    Pentingnya garis sebagai objek/elemen senirupa, sudah terlihat sejak

    dahulu kala. Nenek moyang manusia jaman dulu, menggunakan garis ini

    sebagai media ekspresi senirupa di gua-gua. Mereka menggunakan garis

    ini untuk membentuk obyek-obyek ritual mereka. Sebagai contoh adalah

    lukisan di dinding gua Lascaux di Prancis, Leang-leang di Sulawesi,

     Altamira di Spanyol dan masih banyak lainnya. 

    Grafik Adegan Model Pemrograman 3D 

     Adegan grafik berbasis Java 3D yang menyediakan model

    pemrogramansederhana dan fleksibel

    mekanisme untuk mewakili dan rendering adegan. Grafik adegan berisi

    deskripsi lengkap seluruh adegan, atau jagad maya. Ini mencakup

    geometrik data, informasi atribut, dan informasi yang diperlukan

    untuk melihat

    membuat adegan dari sudut pandang tertentu. Bab 3, “Grafik Adegan

    Dasar-dasar, “memberikan informasi lebih lanjut

    tentang pemrograman grafik3D adegan Java

    model. 

    Java 3D API API meningkatkan pada grafik sebelumnya

    dengan menghilangkan banyak

    pembukuan dan pemrograman API tugas

    yang mereka memaksakan. Java 3D

    memungkinkan programmer untuk berpikir tentang objek

    geometris daripadatentang segitiga-

  • 8/19/2019 Makalah Komputer Grafik

    15/26

    tentang adegan dan komposisinya bukan tentang bagaimana

    menulis rendering

    kode untuk menampilkan adegan efisien. 

    1.Rendering mode 

    Java 3D mencakup tiga mode rendering yang berbeda: modus langsung,

    mempertahankan modus, dan menyusun-retained mode (lihat Bab 13,

    “eksekusi dan Rendering Model”). Mode rendering yang berturut-turut

    setiap memungkinkan Java 3D lebih banyak kebebasan dalam

    mengoptimalkaneksekusi aplikasi. Sebagian besar aplikasi Java 3D

    akan diambil. keuntungan dari kenyamanan dan kinerja manfaat yang tetap

    dan disusun-mempertahankan mode memberikan. 

    2 Immediate Mode 

    Immediate modemeninggalkan sedikit ruang untuk pengoptimalan global

    pada grafik adegan tingkat. Meskipun demikian, Java 3D telah menaikkan

    tingkat abstraksi dan mempercepat segera modus render secara per objek. Aplikasi harus memberikan Metode menarik 3D Java dengan lengkap dari

    poin, lines, atau segitiga, yang kemudian diterjemahkan oleh renderer 3D

    Java berkecepatan tinggi. Tentu saja, aplikasi dapat membangun daftar ini

    dari poin, lines, atau segitiga dengan cara itu memilih. 

    3 Retained Mode 

    Retained mode Modus saldo memerlukan aplikasi untuk membangun

    sebuah adegan grafik dan menentukan elemen mana grafik adegan yang

    dapat berubah selama rendering. AdeganGrafik menggambarkan objek divirtual alam semesta, susunan mereka benda, dan bagaimana aplikasi

    menjiwai objek tersebut. 

    4 Compiled-Retained Mode 

    Compiled-retained mode, seperti mempertahankan modus, membutuhkan

    aplikasi untuk membangun adegan grafik dan menentukan unsur-unsur

  • 8/19/2019 Makalah Komputer Grafik

    16/26

    yang adegan grafik dapat berubah selama rendering. Selain itu, aplikasi

    dapat menyusun beberapa atau semua subgraphs membuat grafik adegan

    lengkap. Mengkompilasi Java 3D grafik ini ke internal format. Representasi

    dikompilasi grafik adegan mungkin beruang mirip dengan struktur pohon

    asli yang disediakan oleh aplikasi, namun, ini fungsional setara.

    Disusun-retained mode menyediakan tertinggi kinerja. 

    5 Extensibility 

    Kebanyakan Java 3D kelas mengekspos hanya metode aksesor dan

    mutator. Metode-metodehanya beroperasi pada objek bahwa keadaaninternal, membuatnya tidak berarti untuk aplikasi untuk mengganti mereka.

    Oleh karena itu, Java 3D tidak menyediakan kemampuan

    untuk menimpa perilaku Java 3D atribut. Untuk membuat Java 3D bekerja

    dengan benar, aplikasi harus memanggil “super.setXxxxx” untuk negara

    atribut menetapkan metode akan ditimpa. Aplikasi dapat memperpanjang

    kelas Java 3D dan menambahkan metode mereka sendiri. Namun,mereka

    mungkin tidak menimpa Java 3D adegan grafik traversal semantik

    karena Node tidak berisi traversal eksplisit dan menarik metode. Java 3Drenderer mempertahankan semantik tersebut secara internal. Java 3D

    menyediakan kait untuk mencampur Java 3D–controlled adegan grafik

    render dan dikendalikan oleh pengguna render menggunakan Java 3D

    segera modus konstruksi (lihat bagian 14.1.2, “Campuran-Mode

    Rendering”). Atau, aplikasi dapat menghentikan renderer Java 3D dan

    melakukan semua yang menarik dalam modus langsung (lihat Bagian

    14.1.1, “Murni segera-Mode Rendering”). Perilaku memerlukan aplikasi

    untuk memperluas objek perilaku dan untuk menimpa yang metode dengankode Java ditulis pengguna. Ini diperpanjang objek harus berisi

    referensi untuk adegan grafik objek tersebut yang akan mereka

    memanipulasi pada jangka waktu. Bab 10, “Perilaku dan Interpolators,”

    menggambarkan perilaku Java 3D model. 

  • 8/19/2019 Makalah Komputer Grafik

    17/26

     

    6 High Performance 

    Model pemrograman java 3D memungkinkan 3D Java API untuk

    melakukan tugas-tugas yang biasa, seperti adegan grafik traversal,

    mengelola perubahan negara atribut, dan sebagainya, dengan demikian

    menyederhanakan aplikasi pekerjaan. Java 3D melakukan ini tanpa

    mengorbankan kinerja. Pada pandangan pertama, mungkin tampak bahwa

    pendekatan ini akan membuatlebih banyak pekerjaan untuk API; Namun,

    itu benar-benar memiliki efek sebaliknya. Java 3D tingkat yang lebih tinggi

    dari abstraksi perubahan tidak hanya jumlah tetapi, yang lebih penting,

        juga jenis pekerjaan API harus melakukan. Java 3D tidak perlu

    memaksakan jenis yang sama kendala seperti api dengan tingkat yang

    lebih rendah dari abstraksi, sehingga memungkinkanJava 3D untuk

    memperkenalkan optimasi tidak mungkin dengan api tingkat rendah

    ini. Selain itu, meninggalkan rincian render ke Java 3D memungkinkan

    untuk tune render untuk hardware yang mendasarinya. Sebagai contoh,

    santai render ketat urutan yang dipaksakan oleh api lain memungkinkan

    traversal paralel serta rendering paralel. Mengetahui bagian mana dari

    adegan grafik tidak diubah saat menjalankan memungkinkan Java 3Duntuk meratakan pohon, geometri pretransform, atau mewakili

    geometri dalam format hardware asli tanpa perlu untuk menyimpan data

    asli. 

    7 Layered Implementation 

    Selain optimasi di tingkat grafik adegan, salah satu faktor yang lebih

    pentingyang menentukan kinerja Java 3D adalah waktu yang dibutuhkan

    untuk membuat terlihat geometri. Java 3D implementasi berlapis untukmengambil keuntungan dari asli, tingkat-rendah API yang tersedia pada

    sistem tertentu. Secara khusus, Java 3D implementasi yang menggunakan

    Direct3D dan OpenGL tersedia. Ini berarti bahwa Java 3D rendering akan

    dipercepat di berbagai sama sistem yang didukung oleh api tingkat rendah

    ini. 

  • 8/19/2019 Makalah Komputer Grafik

    18/26

     

    8 Menargetkan Hardware Platforms 

    Java 3D ditujukan pada berbagai mampu 3D hardware dan software

    platform,dari kartu permainan PC berbiaya rendah dan lunak renderers

    pada akhir rendah, melalui midrange workstation, sepanjang jalan untuk

    kinerja yang sangat tinggi khusus Gambar 3D generator. 

    Java 3D implementasi diharapkan untuk memberikan tingkat render

    berguna pada sebagian besar    

    PC modern, khususnya dengan kartu akselerator grafis 3D. Pada

    midrangeworkstation, Java 3D diharapkan untuk memberikan aplikasi

    dengan kecepatan yang hampir penuh kinerja perangkat keras. Akhirnya,

    Java 3D dirancang untuk skala sebagai platform perangkat keras yang

    mendasari peningkatan kecepatan dari waktu ke waktu. Besok 3D

    akselerator permainan PC akan mendukungdunia maya yang lebih

    kompleks daripada harga tinggi workstation beberapa tahun yang

    lalu. Java 3D dipersiapkan untuk memenuhi peningkatan kinerja perangkat

    keras. 

    9 Support for Building Applications and Applets 

    Java 3D mengantisipasi maupun langsung mendukung setiap

    kemungkinan membutuhkan 3D. Sebaliknya menyediakan dukungan untuk

    menambahkan fitur tersebut melalui kode Java. Objek didefinisikan dengan

    menggunakan sistem CAD (CAD) atau animasi sistem dapat dimasukkan

    dalam aplikasi berbasis 3D Java. Kebanyakan model paket memiliki format

    eksternal (kadang-kadang berpemilik). Desainer dapatmengekspor geometri yang dirancang dengan menggunakan modeler

    eksternal ke file. Java 3D dapat menggunakan itu geometris informasi,

    tetapi hanya jika aplikasi menyediakan sarana untuk membaca

    dan menerjemahkan modeler format file ke Java 3D primitif.Demikian pula,

    VRML loader akan mengurai dan menerjemahkan VRML file dan

  • 8/19/2019 Makalah Komputer Grafik

    19/26

  • 8/19/2019 Makalah Komputer Grafik

    20/26

     

    Java 3D mendefinisikan beberapa kelas dasar yang digunakan untuk

    membangun dan memanipulasi adegan grafik dan untuk melihat dan

    rendering. Gambar 1-1 menunjukkan secara keseluruhan Objek hirarki

    yang digunakan oleh Java 3D. Bab-bab berikutnya memberikan lebih detail

    untuk bagian-bagian tertentu dari hirarki. 

    12 Penataan Java 3D Program 

    Bagian ini menggambarkan bagaimana seorang pengembang mungkin

    struktur 3D aplikasi Java. 

     Aplikasi sederhana dalam contoh ini menciptakan grafik adegan yang

    menarik objek di tengah dari jendela dan berputar obyek tentang titik pusat. 

    13 Java 3D Application Scene Graph 

    Grafik adegan untuk contoh aplikasi yang ditampilkan dalam gambar1-2.Grafik adegan terdiri dari superstruktur

    komponen-VirtualUniverse objek dan objek lokal- dan satu set cabang

    grafik. Setiap cabang grafik Graf bagian yang berakar oleh node

    BranchGroup yang dilampirkan ke gedung. Untuk informasi lebih lanjut,

    lihat Bab 3, “Adegan grafik dasar.” 

     javax.media.j3d 

    VirtualUniverse 

    Locale 

    View 

  • 8/19/2019 Makalah Komputer Grafik

    21/26

    PhysicalBody 

    PhysicalEnvironment 

    Screen3D 

    Canvas3D (extends awt.Canvas) 

    SceneGraphObject 

    Node 

    Group 

    Leaf    

    NodeComponent 

    Various component objects 

    Transform3D 

     javax.vecmath 

    Matrix classes 

    Tuple classes 

    Objek VirtualUniverse mendefinisikan bernama alam semesta. Java 3D

    memungkinkan penciptaan alam semesta lebih dari satu, meskipun

    sebagian besar aplikasi akan menggunakan hanya salah satu.VirtualUniverse obyek menyediakan landasan untuk adegan grafik. Semua

    Java adegan 3D grafik harus tersambung ke objek VirtualUniverse untuk

    ditampilkan. Untuk informasi lebih lanjut, lihat Bab 4, “Adegan grafik

    superstruktur.” 

    Di bawah VirtualUniverse objek ini adalah objek lokal. Objek lokal

    mendefinisikan asal, dalam resolusi tinggi koordinat, grafik cabang

    terlampir. Virtual alam semesta mungkin berisi lokal sebanyak yangdiperlukan. Dalam contoh ini, satu Lokal objek didefinisikan dengan

    asal-usulnya di (0,0 0,0, 0,0).Grafik adegan itu sendiri dimulai dengan node

    BranchGroup (lihat bagian 5.2, "BranchGroup Node"). BranchGroup

    berfungsi sebagai root Graf bagian, disebut cabang grafik, grafik adegan.

    Hanya BranchGroup objek dapat melampirkan untuk Objek lokal. 

  • 8/19/2019 Makalah Komputer Grafik

    22/26

     

    Dalam contoh ini ada dua cabang grafik dan, dengan demikian, dua

    BranchGroup node.Terlampir ke kiri BranchGroup adalah dua subgraphs.

    Satu Graf bagian terdiri dari diperpanjang pengguna perilaku daun adalah

    simpul. Perilaku node berisi kode Java untuk manipulasi matriks

    transformasi yang terkait dengan objek geometri. 

    Graf-bagian lainnya di BranchGroup ini terdiri dari simpul TransformGroup

    yang menentukan posisi (relatif terhadap lokal), orientasi dan skala

    geometrisobjek di virtual alam semesta. Satu anak, Shape3D daun adalah

    simpul, merujukuntuk dua komponen objek: objek geometri dan objek

    penampilan. The Objek geometri menjelaskan bentuk geometris objek 3D

    (cube dalam kami contoh sederhana). Objek penampilan menggambarkan

    penampilan geometri (warna, tekstur, bahan refleksi karakteristik, dan

    sebagainya). 

    Hak BranchGroup memiliki satu Graf bagian yang terdiri dari

    TransformGroupnode dan ViewPlatform sebuah daun adalah simpul.

    TransformGroup menentukan posisi (relatif terhadap lokal), orientasi, dan

    skala dari ViewPlatform. Ini berubah ViewPlatform obyek mendefinisikanpengguna akhir melihat dalam virtual alam semesta. 

     Akhirnya, ViewPlatform direkomendasikan oleh tampilan objek yang

    menentukan semua parameter yang diperlukan untuk membuat adegan

    dari sudut pandang ViewPlatform. Juga dirujuk oleh tampilan objek adalah

    benda-benda lain yang berisi informasi, seperti gambar kanvas yang

    menjadikan Java 3D, layar yang berisi kanvas, dan informasi tentang

    lingkungan fisik. 

    13 Resep untuk Java 3D Program 

  • 8/19/2019 Makalah Komputer Grafik

    23/26

    Langkah-langkah berikut diambil oleh contoh program untuk membuat

    grafik adegan unsur-unsur dan menghubungkan mereka bersama-sama.

    Java 3D akan kemudian membuat grafik adegan dan Menampilkan grafis

    di jendela pada layar: 

    1. Buat objek Canvas3D dan menambahkannya ke Applet panel. 

    2. Buat BranchGroup sebagai root adegan cabang grafik.  

    3. Membangun sebuah node Shape3D dengan sebuah simpul

    TransformGroup di atasnya. 

    4. Pasang perilaku RotationInterpolator ke TransformGroup. 

    5. Panggilan fungsi utilitas semesta sederhana untuk melakukan hal

    berikut: 

    a. membangun virtual alam semesta dengan satu resolusi tinggi lokal (lihat 

    Bab 3, “Adegan grafik dasar”). 

    b. membuat PhysicalBody, PhysicalEnvironment, pandangan, dan

    ViewPlatform 

    objek. 

    c. membuat BranchGroup sebagai akar dari tampilan platform cabang

    grafik. 

    d. Masukkan cabang platform tampilan grafik ke lokal. 

    6. Masukkan adegan cabang grafik ke alam semesta sederhana lokal. 

    Java 3D renderer kemudian mulai berjalan dalam loop tak terbatas.

    Renderer konseptual 

    melakukan operasi berikut: 

    while(true) { Process input 

    If (request to exit) break 

    Perform Behaviors 

    Traverse the scene graph and render visible objects 

  • 8/19/2019 Makalah Komputer Grafik

    24/26

    Cleanup and exit 

    14 HelloUniverse: Sampel 3D Program Java 

    Berikut adalah potongan-potongan kode dari program yang sederhana,

    HelloUniverse.java, 

    yang menciptakan sebuah kubus dan RotationInterpolator perilaku objek

    yang berputar    

    kubus dengan laju yang konstan p/2 radian per detik. 

    15 HelloUniverse kelas 

    Kelas HelloUniverse, pada halaman berikutnya, menciptakan grafik cabang

    yang mencakup 

    kubus dan perilaku RotationInterpolator. Kemudian menambahkan grafik

    cabang ini untuk 

    objek lokal yang dihasilkan oleh utilitas SimpleUniverse. 

    public class HelloUniverse extends Applet { 

    public BranchGroup createSceneGraph() { 

     // Create the root of the branch graph 

    BranchGroup objRoot = new BranchGroup(); 

     // Create the TransformGroup node and initialize it to the 

     // identity. Enable the TRANSFORM_WRITE capability so that  

     // our behavior code can modify it at run time. Add it to  // the root of the subgraph. 

    TransformGroup objTrans = new TransformGroup(); 

    objTrans.setCapability( 

    TransformGroup.ALLOW_TRANSFORM_WRITE); 

    objRoot.addChild(objTrans); 

  • 8/19/2019 Makalah Komputer Grafik

    25/26

     

     // Create a simple Shape3D node; add it to the scene graph. 

    objTrans.addChild(new ColorCube(0.4)); 

     // Create a new Behavior object that will perform the 

     // desired operation on the specified transform and add  

     // it into the scene graph. 

    Transform3D yAxis = new Transform3D(); 

     Alpha rotationAlpha = new Alpha(-1, 4000); 

    RotationInterpolator rotator = new RotationInterpolator( 

    rotationAlpha, objTrans, yAxis, 

    0.0f, (float) Math.PI*2.0f); 

    BoundingSphere bounds = 

    new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0); 

    rotator.setSchedulingBounds(bounds); 

    objRoot.addChild(rotator); 

    // Have Java 3D perform optimizations on this scene graph.  

    objRoot.compile(); 

    return objRoot; 

    public HelloUniverse() { 

     

     // Create the scene; attach it to the virtual universe 

    BranchGroup scene = createSceneGraph(); SimpleUniverse u = new SimpleUniverse(canvas3d); 

    u.getViewingPlatform().setNominalViewingTransform(); 

    u.addBranchGraph(scene); 

  • 8/19/2019 Makalah Komputer Grafik

    26/26

     

    BAB IV 

    KESIMPULAN 

    Grafik komputer 3 dimensi biasa disebut 3D atau 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 cahayaterhadap grafika komputer 2D. Tiga Dimensi, biasanya digunakan dalam

    penanganan grafis. 3D secara umum merujuk pada kemampuan dari

    sebuah video card (link). Saat ini video card menggunakan variasi dariinstruksi-instruksi yang ditanamkan dalam video card itu sendiri (bukan

    berasal dari software) untuk mencapai hasil grafik yang lebih realistisdalam memainkan game komputer. 

    Istilah atau Pengertian Grafik 3D adalah sebuah

    gambar,garis,lengkungan,dan sebagainya yang memiliki titik-titik yangmenghubungkan 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 dariinstruksi-instruksi yang ditanamkan dalam video card itu sendiri (bukan

    berasal dari software) untuk mencapai hasil grafik yang lebih realistisdalam memainkan game komputer.