Kamis, 25 April 2013

Scan Conversion, Transformasi, dan Proyeksi


Scan Conversion
Scan Conversion merupakan metoda untuk memetakan titik ke dalam suatu pixel. Scan Conversion dapat dilakukan terhadap Line (garis), polygon, ataupun garis lengkung (kurva).

tugas:
1.        Sebutkan algoritma untuk menggambar garis!
2.        Berikan satu (1) algoritma untuk menggambar garis!
3.        Yang harus diperhatikan dalam menggambar garis:
Ø  Ketebalan garis (thickness) dan
Ø  Bentuk tepi garis (ends): Butt, Round, dan Square.
Berikan contoh gambar garis dengan bentuk tepi Butt, Round, dan Square!
4.        Penggabungan garis (Joining): Ugly, Bevel, Round, Miter.
Berikan contoh gambar penggabungan dua garis dengan tipe Ugly, Bevel, Round, dan Miter.

Transformations

Transformation adalah suatu metoda untuk mengubah lokasi titik. Operasi-Operasi Primitive pada Transformations terbagi menjadi:

Ø  Scale,
Ø  Rotate,
Ø  Shear,
Ø  Flip,
Ø  Translate


Tugas:
5.        Berikan contoh:
a. Satu gambar objek.
b. Hasil transformasi objek tersebut yang ditransformasikan dengan Scale, Rotate, Shear, Flip, Translate, dan Rotasi
6.    Apakah perbedaan antara Linear Transformation dan Non-Linear Transformation?
7.    Berikan contoh Linear Transformation dan Non-Linear Transformation dari Operasi-Operasi Primitive transformation!
8.    Apakah perbedaan antara Geometric Transformation dan Color Space Transformation?
9.    Apakah yang dimaksud dengan Koordinat Homogen (Homogeneous Coordiantes)?


PROYEKSI
Proyeksi merupakan salah satu jenis transformasi, yaitu transformasi koordinat. Proyeksi pada bidang datar (planar) dilakukan melalui sinar proyeksi yang muncul dari titik pusat proyeksi melewati setiap titik dari benda dan memotong bidang proyeksi (projection plane) untuk mendapatkan benda hasil proyeksi. Proyeksi Planar (Planar Geometric Projections) dibedakan menjadi:
1.    Proyeksi Paralel.
Berdasarkan hubungan antara arah proyeksi dengan vektor normal dari bidang proyeksi, proyeksi paralel dibedakan menjadi:
1.  Orthographic à Proyeksi orthographic ada yang disebut proyeksi axonometric. Proyeksi Axonometric dibedakan menjadi proyeksi:
Ø isometric,
Ø dimetric, dan
Ø trimetric.
2. Oblique.

2.    Proyeksi Perspektif.

Perbedaan antara proyeksi parallel & perspektif adalah: pada proyeksi parallel jarak antara titik pusat proyeksi ke bidang proyeksi tidak terhingga, sementara para proyeksi perspektif jarak antara titik pusat proyeksi ke bidang proyeksi bersifat infinite (tertentu).

Tugas:
10.    Berikan penjelasan mengenai Proyeksi Orthographic?
11.    Berikan penjelasan mengenai Proyeksi Perspective?
12.    Berikan contoh gambar dua proyeksi tersebut!
13.    Buatlah tabel perbandingan diantara dua proyeksi tersebut!

Scan Conversion
1.         Algoritma garis Digital Differential Analyzer (DDA), Algoritma garis Bressenham,  Algoritma garis C++.
2.         Langkah-langkah membentuk garis menurut algoritma DDA adalah :
1.     Tentukan dua titik yang akan dihubungkan dalam pembentukan garis
2.     Tentukan titik awal yaitu dan titik akhir .
3.     Hitung dx x1x0 dan dy y– y0
4.     Tentukan step = max( |dx| , |dy| )
5.     Hitung penambahan koordinat pixel XInc dx / step dan YInc dy step
6.     Koordinat selanjutnya (x+XIncy+yInc)
7.     Posisi pada layar ditentukan dengan pembulatan nilai koordinat tersebut
8.     Ulangi nomor 6 dan 7 untuk menentukan posisi pixel berikutnya. sampai x=x1dan y=y1.
3.         tipe garis “butt” maksudnya adalah Bentuk tepi garis sampai akhir (berhenti garis tepat di akhir) dan tipe garis “round” adalah bentuk garis melengkung dan saling menyambung sedangkan tipe garis “square” hampir sama dengan tipe garis round hanya saja tipe garisnya lebih membentuk sudut siku






4.
- Ugly Join Merupakan penggabungan dua buah garis yang memilik sudut pertemuan menjorok   kedalam.
- Bevel Merupakan penggabungan dua buah garis yang memilik sudut pertemuan menjorok keluar.
- Round
Merupakan penggabungan dua buah garis dengan membentuk lengkungan.
- Miter 
Merupakan penggabungan dua buah garis yang membentuk lancip.



 

Proyeksi10.       Proyeksi ortografik adalah sebuah metode untuk menyampaikan bentuk asli dari sebuah benda 3 dimensi dalam bentuk proyeksi pada bidang datar dalam bentuk gambar 2 dimensi (tidak ada dimensi ketebalan), dilihat dari beberapa sudut pandang (atas, samping kiri dan kanan, sesua kebutuhan).
11.       Proyeksi perspektif adalah cara penggambaran pandangan tunggal dimana dalam menggambarkan gambar proyeksinya garis-garis dalam salah satu atau dua dimensi bertemu pada satu titik yang disebut titik hilang. Pada proyeksi ini tidak ada satu garis pun yang ukurannya tepat seperti bendanya.










12. 


12.1          Contoh Proyeksi Perspektif


 












12.2          Contoh Proyeksi Ortografi


13.               Perbedaan Proyeksi Ortografi dan Perspektif
Ortografi
Perspektif
Lebih detail karena gambar 3d disajikan dari segala sisi dengan gambar 2d
Cenderung sulit untuk dipahami apabila gambar disajikan dengan teknik lebih dari dua titik hilang.
Cenderung menyajikan banyak gambar sehingga waktu yang dibutuhkan untuk pengerjaannya lebih lama
Hanya menyajikan satu gambar, namun sudah mencakup keseluruhan dari objek.
Lebih mudah menentukan ukuran dari setiap sisi objek karena menggunakan gambar 2D.
Harus teliti dalam menentukan ukuran dari setiap sisi objek karena tidak ada garis yang ukurannya sesuai dengan tinggi objek aslinya.

Transformasi
       Transformation adalah suatu metoda untuk mengubah lokasi titik. Operasi-Operasi Primitive pada Transformations terbagi menjadi:
·         Scale
·         Rotate
·         Shear
·         Flip
·         Translate

Contoh gambar suatu objek :
Hasil dari transformasi gambar objek diatas :
a. Scale adalah skala pengali sama untuk semua komponen.
b. Rotate/Rotasi adalah merotasi atau memutar suatu objek dengan nilai yang ditentukan. Dibawah ini adalah Rotasi terhadap titik (0,0) sebanyak 450 .
          
c. shear terhadap sumbu y

d. Flip terhadap sumbu x
e. Translate. (tx,ty) disebut vector Translasi
       Perbedaan antara Linear Transformation dan Non-Linear Transformation adalah model linier menunjukkan hubungan antara dua variable mengikuti garis lurus. Sedangkan non linier mengikuti garis yang tidak lurus, misalnya kuadratik (garisnya melengkung keatas lalu turun  kebawah).
       contoh Linear Transformation dan Non-Linear Transformation dari Operasi-Operasi Primitive transformation :
·         Linear transformation
·         Non-linear transformation
Perbedaan antara Geometric Transformation dan Color Space Transformation adalah sebagai berikut :
·         Transformasi Geometrik adalah transformasi berdasarkan perpindahan geometrik suatu titik Transformasi ini terdiri dari translasi, skala dan rotasi, sedangkan
·         Color Space Transformation membahas cara-cara mentransfomasi warna dalam model warna tertentu saja dilakukan dengan cara Formulasi, Komplemen warna, Pemotongan warna, Koreksi warna, Pemrosesan histogram.

       Koordinat Homogen (Homogeneous Coordiantes) adalah Koordinat homogen adalah representasi koordinat 2 dimensi dengan 3 vektor. Setiap koordinat posisi (x,y) direpresentasikan dalam bentuk koordinat homogen (xh,yh,h);
Paling sederhana: h = 1 à (x,y,1) .

TABEL KINERJA
NPM
NAMA
Kinerja
56410097
Rizanuary Fauzi
Mengerjakan Bagian Transformasi
50410941
Anton Budikusuma
Mengerjakan Bagian Proyeksi
53410764
Johan Fransisco
Mengerjakan Bagian Scan Conversion

Referensi :

Jumat, 01 Februari 2013

Penyebab Sinus dan Polip akhirnya terkuak

Jakarta, Penyakit sinus dan polip yang sudah kronis bisa membuat penderita menjadi sulit bernapas dan mengganggu aktivitasnya. Kini peneliti dari Amerika telah berhasil mengidentifikasi protein yang menyebabkan seseorang terkena polip dan sinus.

Protein yang berhasil diidentifikasi ini telah menyebabkan 15 sampai 30 persen orang terkena polip dan sinus kronis. Kondisi yang ditimbulkan ini merupakan salah satu kasus sinusitis yang paling serius karena menyebabkan iritasi yang terus menerus serta terjadinya pembengkakan di saluran pernapasan.

Polip biasanya terbentuk akibat pertumbuhan jaringan sinus yang tidak sehat di dalam hidung, sehingga bisa menghambat bagian-bagian tertentu dan membuat seseorang sulit bernapas melalui hidung. Sedangkan sinus terjadi akibat adanya infeksi atau peradangan pada salah satu saluran sinus di hidung. Penyakit ini sering menyebabkan rasa sakit, bengkak dan infeksi.

"Tipe penyakit ini biasanya tidak halus, sehingga seseorang bisa dengan mudah mengenalinya. Umumnya penderita bernapas dengan mulut, berbicara dengan suara sengau, sering kali terkena flu dan terkadang wajahnya membengkak," ujar Dr Jean Kim, seorang asisten profesor di departemen THT dan alergi di Johns Hopkins University School of Medicine, seperti dikutip dari Health, Selasa (24/11/2009). 

Kim dan rekannya menganalisis jaringan-jaringan sinus dari pasien yang memiliki penyakit sinus dan polip. Hasil dari analisis ini didapatkan bahwa terdapat sebuah protein yang dikenal dengan nama vascular endothelial growth factor (VEGF).

Protein VEGF ini diketahui bisa merangsang pertumbuhan pembuluh darah sehingga menyebabkan sel tumbuh secara berlebihan (overgrowth) yang nantinya bisa memicu timbulnya polip atau sinus di saluran hidung tersebut.

Pembedahan atau operasi sampai saat ini masih menjadi pengobatan yang umum dilakukan, tapi terkadang polip bisa tumbuh kembali meskipun operasi sudah dilakukan. Sementara itu pengobatan steroid oral hanya membantu mengatasi masalah dalam waktu sementara saja dan diketahui memiliki beberapa efek samping.

"Dengan ditemukannya protein ini, diharapkan pada masa mendatang ditemukan cara pengobatan dengan menggunakan semprot hidung yang mengandung anti-VEGF di dalamnya dan mengurangi efek samping yang ada," ungkap Kim.(ver/ir)

 
sumber: health.detik.com

Review Game Engine

Teknologi game dewasa ini memang sangat populer, bukan hanya dari segi permainan, grafik, serta efek-efek yang sangat bagus. Untuk menghasilkan game yang layak untuk dimainkan dan juga 'eye cading', tentunya membutuhkan sebuah perangkat bantu seperti game engine.

Game engine merupakan sebuah software yang memang sengaja dibuat untuk keperluan pembuatan dan pengembangan sebuah game. Dengan adanya game engine ini, memudahkan seorang pengembang untuk merancang game mulai dari rendering, visual, arsitektur, AI, dan bahkan sistem jaringan game itu sendiri. Jika game adalah jiwa para gamer, maka game engine adalah jiwa dari sebuah game.


Dengan adanya game engine ini, baik proses pembuatan dan pengembangan game menjadi lebih efisien waktu. Sering kita jumpai game-game yang dirancang untuk konsol dan desktop, sehingga tanpa game engine proses pembuatannya akan memakan waktu lebih lama. Dalam game engine sendiri terdapat tools atau alat pendukung yang berguna untuk rancang bangun sebuah game, antara lain : mesin render 2D dan 3D, script, collision detection, suara, grafik, animasi, kecerdasan buatan, menejemen memori, jaringan streaming.

Pada perkembanganya, game engine ini ada yang berbayar dan ada juga yang gratis alias open source. Berikut adalah contoh-contoh game engine yang open source dan berbayar .
Contoh game engine open source :
  1. OGRE
  2. Panda 3D
  3. crystal space
  4. blender game engine
  5. jME
  6. openSceneGraph, dll.
Contoh game engine berbayar :
  1. c4 Engine
  2. torque game engine
  3. 3DGamestudio
  4. DXStudio
  5. neoExis engine
  6. esenthel engine, dll 
# Sejarah Game Engine
Istilah “Game Engine” muncul pada pertengahan 1990-an, terutama dalam kaitannya dengan game 3D seperti orang pertama shooters (FPS). (Lihat juga: pertama-orang jujur mesin). Begitulah popularitas id Software ’s Doom dan Quakepermainan yang, daripada bekerja dari nol, lain pengembangberlisensi bagian inti dari perangkat lunak dan grafis yang dirancang mereka sendiri, karakter, senjata, dan tingkat-”permainan isi” atau “permainan aset. “ Pemisahan permainan-aturan tertentu dan data dari konsep-konsep dasar seperti tabrakan dan permainanentitas yang berarti bahwa tim bisa tumbuh dan mengkhususkan. Sekarang hampir semua perusahaan game memiliki game engine mereka sendiri, menggunakannya untuk membuat game mereka, dan menyimpannya untuk diri sendiri. Semakin lama kebutuhan untuk game engine yang makin modern semakin bertambah. Waktu demi waktu, game engine yang mereka kembangkan sendiri mulai dirasa terlalu mahal untuk dikembangkan lebih lanjut. Hal ini memicu beberapa developer untuk menciptakan game engine yang terbuka untuk di franchise kan. Sebagai contoh adalah id Tech dan Unreal Engine. Game Engine yang dijual dan di franchisekan secara umum semacam ini disebut dengan middleware. Middleware menawarkan harga yang relatif lebih murah, dan bagi kebanyakan studio game, menggunakan middleware merupakan solusi cepat dan ekonomis ketimbang harus membangun sendiri engine game mereka.

# Klasifikasi Game Engine dan Contohnya
Sebuah game engine dibagi lagi menjadi dua bagian besar yaitu API dan SDK. API ( Applicaiton Programming Interfaces ) adalah bagian operating system, services dan libraries yang diperlukan untuk memanfaatkan beberapa feature yang diperlukan. Dalam hal ini contohnya DirectX. Sementara SDK adalah kumpulan dari libraries dan API yang sudah siap digunakan untuk memodifikasi program yang menggunakan operating system dan services yang sama.
Game engine mempunyai tipe-tipe diantaranya:
  • Roll-your-own game engine
Game engine tipe ini lebih disukai karena kemungkinan besar dapat digunakan gratis. selain itu, game engine tipe ini memperbolehkan para developer lebih fleksibel dalam mengintegrasikan komponen yang diinginkan untuk dibentuk sebagai game engine mereka sendiri. Kelemahan dari tipe game engine ini banyak engine yang dibuat dengan cara semacam ini malah menyerang balik developernya
  • Mostly-ready game engines
Game engine biasanya sudah memberikan fitur-fitur kepada developer game seperti GUI, physiscs, libraries model, texture dan lain-lain. Engine  ini memiliki beberapa batasan, terutama jika dibandingkan dengan game engine sebelumnya yang benar-benar terbuka lebar. Hal ini ditujukan agar tidak terjadi banyak error yang mungkin terjadi setelah sebuah game yang menggunakan engine ini dirilis dan masih memungkinkan game engine-nya tersebut untuk mengoptimalkan kinerja game-nya. Contoh tipe game engine seperti ini adalah Unreal Engine, Source Engine, id Tech Engine dan sebagainya yang sudah sangat optimal dibandingkan jika harus membuat dari awal. Dengan hal ini dapat menyingkat menghemat waktu dan biaya dari para developer game.
  • Point-and-click engines
Engine ini merupakan engine yang sangat dibatasi, tapi dibuat dengan sangat user friendly. Developer game bahkan bisa mulai membuat game sendiri menggunakan engine seperti GameMaker, Torque Game Builder dan Unity3D. Dengan sedikit memanfaatkan coding, sudah bisa merilis game.  Kekurangannya terletak pada terbatasnya jenis interaksi yang bisa dilakukan dan biasanya hal ini mencakup semuanya, mulai dari grafis hingga tata suara. Tapi bukan berarti game engine jenis ini tidak berguna, bagi developer cerdas dan memiliki kreativitas tinggi, game engine seperti ini bisa dirubah menjadi sebuah game menyenangkan. Game engine ini memang ditujukan bagi developer yang ingin menyingkat waktu pemrogramman dan merilis game-game mereka secepatnya
Nah sekarang saya akan menjelaskan sedikit tentang salah satu Game Engine. Dan disini saya memilih OGRE

OGRE
Ogre (Object-Oriented Graphics Rendering Engine) adalah sebuah adegan yang berorientasi, fleksibel mesin render 3D (sebagai lawan dari mesin permainan) ditulis dalam C + + dirancang untuk membuatnya lebih mudah dan intuitif bagi developer untuk menghasilkan aplikasi dengan menggunakan hardware-accelerated grafis 3D. Perpustakaan kelas abstrak rincian menggunakan sistem yang mendasari perpustakaan seperti Direct3D dan OpenGL dan menyediakan sebuah antarmuka dunia yang didasarkan pada objek dan kelas-kelas tingkat tinggi lainnya.
Ogre memiliki komunitas yang sangat aktif, dan Sourceforge.net ‘s proyek dari bulan Maret 2005. Telah digunakan di beberapa permainan komersial seperti Ankh dan Torchlight.