Selasa, 30 April 2013

Grafika Komputer

MEMBUAT LINGKARAN

SYNTAX : LINGKARAN 




//header file
#include <stdlib.h>
#include <gl/glut.h>
#include <math.h>

//fungsi unutk membuat garis horizontal
void garisHorizontal(int posx, int posy){
      glBegin(GL_LINES);
            glVertex2i(posx, posy+posx);
            glVertex2i(-(posx), posy+posx);
      glEnd();
}

//fungsi untuk membuat garis vertical
void garisVertical (int posx, int posy){
      glBegin(GL_LINES);
            glVertex2i(posx+posy, posy);
            glVertex2i(posx+posy, -(posy));
      glEnd();
}

const double PI = 3.14;
int i;

//fungsi untuk membuat lingkaran
void lingkaran(int radius, int jumlah_titik, int x_tengah, int y_tengah) {
 glBegin(GL_POLYGON);

 //rumus untuk menempatkan vertex agar membentuk sebuah lingkaran
 for (i=0;i<=360;i++){
        float sudut=i*(2*PI/jumlah_titik);
        float x=x_tengah+radius*cos(sudut);
        float y=y_tengah+radius*sin(sudut);
  glVertex2f(x,y);
 }
 glEnd();
}

void renderScene() {
 glClear(GL_COLOR_BUFFER_BIT);
 glColor3f(1.,1.,1.);
      garisHorizontal(-320, 320);
      garisVertical(-320, 320);


 glColor3f(0.5, 1, 0.0);
 lingkaran(100,80,0,0);
 glFlush();
}


int main(int argc, char **argv) {
 glutInit(&argc, argv);
 glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
 glutInitWindowSize(500, 500);
 glutInitWindowPosition(100, 100);
 glutCreateWindow("Lingkaran");
 gluOrtho2D(-320., 320., -320., 320.);
 glutDisplayFunc(renderScene);
 glutMainLoop();
 return 0;
}

Fergie kagumi satu wonderkid United


Sir Alex Ferguson sudah mengakui bahwa dirinya telah memiliki daftar target transfer yang ingin didapatnya dalam bursa transfer nanti.

Fergie menyebut bahwa daftar itu merupakan hasil kerja tim pemandu bakatnya selama beberapa bulan terakhir.

Namun Fergie juga tak mau melupakan pemain didikan sendiri. Fergie menyebut bahwa United adalah tim muda yang punya prospek cerah untuk setidaknya lima tahun ke depan. Secara khusus, Fergie menunjuk satu wonderkid Manchester United yang akan bersinar: Adnan Januzaj.

"Para pemain muda United adalah pondasi tim untuk lima tahun ke depan. Banyak pemain bertalenta yang mulai merangsek menuju tim utama. Salah satunya adalah Adnan Januzaj, bocah Belgia yang memperlihatkan prospek sangat bagus," ujar Fergie.

Siapa Adnan Januzaj? Secara singkat, Januzaj adalah pemain Belgia kelahiran Kosovo 18 tahun silam. Ia diambil United dari akademi Anderlecht pada 2011 lalu. Uniknya, Januzaj memiliki tanggal lahir yang sama dengan mantan bintang United, Cristiano Ronaldo yang lahir pada 5 Februari.

Januzaj berposisi sebagai gelandang, namun ia tak segan bermain ke sisi sayap. Ia juga piawai memanfaatkan celah pertahanan lawan. Januzaj memiliki visi bermain bagus dan cukup piawai melepaskan diri dari tekanan para pemain lawan.

Cara bermainnya sedikit banyak mirip Shinji Kagawa, tetapi Januzaj juga memiliki potensi besar dalam hal mengambil tendangan bebas. Pekan ini, Fergie memasukkan Januzaj ke tim utama dan diberi nomor punggung 44. (tdm/hsw)


Sumber: Bola.net

SIAPA YANG PALING UNGGUL ... ??



Alkisah palu, bor, obeng, serut, gergaji dan penggaris sedang mengadakan rapat di bengkel tukang kayu. Masing2 mereka saling menyalahkan satu sama lain.

Palu dinilai terlalu ribut krn suaranya paling gaduh ketika bekerja.
Bor juga dinilai tdk memberi manfaat apa2 krn tugasnya hanya membuat lubang2 saja. Obeng pun demikian, krn orang harus memutarnya ber-ulang2 kali baru bisa bekerja.
Apalagi serut, ia dinilai hanya bekerja pada permukaan saja dan tdk mendalam.
Gergaji yang hanya bisa memotong-motong saja .
Lebih2 penggaris, tugasnya hanya mengukur pihak lain saja,

Mereka semua berpikir bahwa se-olah2 dirinyalah yg terbaik.

Di tengah2 kegaduhan rapat itu, masuklah si tukang kayu.
Walaupun mereka saling menyalahkan, akhirnya mereka semua dipakai juga oleh si tukang kayu itu utk menghasilkan suatu perabot yg indah.
Ketika perabot itu yelah selesai dibuat, masing2 alat itu pun sadar: tdk ada gunanya memperbincangkan kekurangan masing2, sebab mereka tetap hanyalah alat yg dipakai oleh si tukang kayu.

Seperti kita semua itu hanyalah bagaikan alat2 bila ada di tangan orang yg Ahli maka berbagai kekurangan yg kita miliki hendaknya tidak menjadi penghalang utk saling bekerjasama dan saling melengkapi satu sama lain .

Ini semua adalah yg dimaksud bahwa Kekurangan Kita mungkin adalah Kelebihan Org Lain, dan Kekurangan Org lain bisa jadi adalah Kelebihan kita...
Seharusnya kita bisa saling melengkapi satu sama lain .

Semoga bisa memberi pencerahan buat kita semua .

By,Halimah Az Zahra.
Hongkong, Indonesian Imigration

HIDAYAH ALLAH ITU DATANG DARI SEORANG ANAK YG BISU

Bismillahir-Rahmaanir-Rahim … Ini adalah salah satu kisah yang ditulis sendiri oleh pelakunya, pelaku cerita adalah penduduk Madinah, dia bercerita sebagai berikut,
Aku adalah seorang pemuda berusia 37 tahun, menikah dan memiliki beberapa anak. Aku mengerjakan segala hal yang Allah haramkan, adapun shalat aku tidak pernah menunaikannya, kecuali dalam beberapa kesempatan saja sebagai basa-basi dan toleransi untuk orang lain, penyebabnya adalah karena aku bersahabat dengan orang-orang jahat dan penipu, jadi setan selalu menemaniku di banyak waktu.

Aku mempunyai seorang anak laki-laki berusia tujuh tahun bernama Marwan, dia tuli dan bisu. Namun dia meminum air susu keimanan dari panyudara sang ibu yang beriman. Suatu malam aku dan anakku Marwan berada di rumah.

Aku sedang merancang acara yang akan aku lakukan bersama teman-teman. Saat itu, waktu sudah memasuki magrib, tiba-tiba Marwan berkata kepadaku dengan bahasa isyarat yang kami pahami, "Ayah, kenapa kamu tidak shalat ..?" kemudian dia mengangkat tangannya menunjuk ke langit dan mengancamku, "Allah melihatmu, Ayah ..!".

Anakku ini beberapa kali melihat aku berbuat kemungkaran. Aku heran dengan ucapannya barusan. Anakku mulai menangis di hadapanku. Aku menariknya ke sisiku, namun dia lari. Beberapa saat kemudian, dia pergi ke keran air dan berwudhu.

Kemudian anakku yang bisu ini masuk dan memberi isyarat kepadaku, "Tunggu sebentar ..!" rupanya dia shalat di depanku, kemudian setelah itu dia berdiri dan mengambil mushaf dan menaruhnya di hadapannya, lalu membukanya tanpa membolak-balik halaman dan menaruh jarinya pada firman Allah di surah Maryam,

"Wahai Bapakku, sesungguhnya aku khawatir bahwa kamu akan ditimpa azab dari Tuhan yang Maha Pemurah, maka kamu menjadi kawan bagi setan". (Maryam [19] : 45)

Kemudian dia menangis dan akupun menangis bersamanya dalam waktu yang lama. Lalu Marwan berdiri dan menghapus air mata dari kelopak mataku, kemudian mencium kepala dan tanganku, lalu dia berkata kepadaku dengan bahasa isyarat, "Shalatlah, Ayah, sebelum kamu dikubur di dalam tanah."

Saat itu aku terkejut dan takut sekali. Lalu aku segera menyalakan semua lampu rumah dan Marwan mengikuti dari satu kamar ke kamar yang lain. "Biarkan lampu-lampu itu, mari kita ke masjid besar", yang dia maksud adalah Masjid Nabawi.

"Kita ke masjid sebelah saja", usulku. Dia tidak mau kecuali ke Masjid suci Nabawi. Lalu aku membawanya ke sana dalam keadaan sangat takut sekali dan pandangannya tidak pernah lepas dariku sedetik pun.

Kami masuk ke Raudhah asy-Syarifah yang penuh dengan manusia. Iqamah shalat Isya dikumandangkan dan saat itu sang imam membaca firman Allah,

"Wahai orang-orang yang beriman! Janganlah kamu mengikuti langkah-langkah setan. Barangsiapa mengikuti langkah-langkah setan maka sesungguhnya dia (setan) menyuruh mengerjakan perbuatan yang keji dan mungkar.

Kalau bukan karena karunia Allah dan rahmat-Nya kepadamu, niscaya tidak seorang pun di antara kamu bersih (dari perbuatan keji dan mungkar itu) selama-lamanya, tetapi Allah membersihkan siapa yang Dia kehendaki. Dan Allah Maha Mendengar, Maha Mengetahui". (an-Nur [24] : 21)

Aku tidak mampu menguasai diriku dari tangis, dan Marwan yang ada disampingku juga menangis mendengar tangisku. Di tengah shalat, Marwan mengeluarkan tisu dari sakuku dan mengusap air mataku. Setelah selesai shalat, aku masih tetap menangis dan dia terus mengusap air mataku, aku duduk di masjid selama satu jam.

Kemudian kami kembali ke rumah. Malam itu adalah malam teragung bagiku, karena aku merasa terlahirkan kembali. Istri dan anak-anakku datang, mereka semua menangis, padahal mereka tidak tahu apa yang terjadi. "Ayah shalat di Masjid suci Nabi", Marwan menerangkan kepada mereka.

Istriku senang mendengar berita ini karena Marwan adalah hasil dari didikannya yang baik. Lalu aku bercerita kepadanya tentang kejadian yang terjadi antara aku dan Marwan.

"Demi Allah, aku hendak bertanya kepadamu, apakah kamu yang menyuruh dia membuka mushaf pada ayat itu. .?" tanyaku kepada istri. Lalu istriku bersumpah tiga kali bahwa dia tidak melakukan itu. Kemudian istriku berkata "Bersyukurlah kepada Allah atas hidayah ini".

Malam itu dalah malam yang paling indah. Sekarang Alhamdulillah aku tidak pernah ketinggalan shalat berjamaah di masjid. Aku meninggalkan semua kawanku yang jahat dan aku merasakan manisnya iman.

Sekarang aku hidup dalam kebahagiaan, cinta dan saling memahami bersama istri dan anak-anakku, khususnya Marwan yang tuli dan bisu. Aku sangat menyayanginya. Bagaimana tidak, ditangannya aku mendapat hidayah.

Wallahu’alam bishshawab, ..

SUMBER : Dikutip dari buku : Kisah-Kisah Penggugah Jiwa oleh : Abdurrahman Bakar

Senin, 29 April 2013

Zaha Terpilih Sebagai Pemain Terbaik Championship

Zaha Terpilih Sebagai Pemain Terbaik Championship


Bola.net - Winger Crystal Palace, Wilfired Zaha dipilih oleh FA sebagai pemain terbaik untuk divisi Championship musim 2012-13. Gelandang Wolverhampton; Tom Ince adalah pesaing terdekatnya.

Kontribusi Zaha bagi The Eagles terbilang cukup besar. Winger berusia 20 tahun itu sukses mengantar timnya mendapatkan tiket playoff, guna melangkah ke Premier League pada musim depan.

Dalam 45 laga di ajang Championship, Zaha menorehkan enam gol dan 17 assist bagi Crystal Palace. Selain itu ia juga berhasil menembus level internasional bersama Timnas Inggris, saat melakoni laga uji coba melawan Swedia.

Namun pada musim depan, kiprah Zaha bersama Crystal Palace harus berakhir. Karena sang pemain telah resmi menjadi milik Manchester United di musim berikutnya.

Selain Zaha, dua rekan setimnya; Glenn Murray dan Yannick Bolasie termasuk ke dalam skuad PFA Championship Team of the Year. Berikut ini daftar selengkapnya:

Kiper: Kasper Schmeichel (Leicester)

Pemain Bertahan: Kieran Trippier (Burnley), Wes Morgan (Leicester), Mark Hudson (Cardiff), Wayne Bridge (Brighton)

Pemain Tengah: Wilfried Zaha (Crystal Palace), Peter Whittingham (Cardiff), Yannick Bolasie (Crystal Palace), Thomas Ince (Blackpool)

Penyerang: Glenn Murray (Crystal Palace), Matej Vydra (Watford) (espn/rdt)

Objek Grafik 2 Dimensi

Objek Grafik 2 Dimensi


Objek grafik 2 dimensi adalah sekumpulan titik-titik 2 dimensi yang dihubungkan dengan garis lurus, baik berupa polyline, polygon atau kurva. Objek grafik 2 dimensi didefinisikan sebagai kumpulan titik 2dimensi yang secara komputasi dinyatakan sebagai array 1D, atau linkedlist sesuai dengan struktur data yang digunakan dalam menyatakan kumpulan titik 2D ini. 
Objek grafik dimensi juga adalah gambar 2 dimensi yang  sumbu x dan sumbu y, atau sumbu koordinat cartesius dua dimensi. Dua sumbu yang saling bertegak lurus antar satu dengan yang lain, yang keduanya terletak dalam satu bidang (bidang xy).
Sedangkan Grafik komputer 2D adalah sebuah generasi gambar digital berbasis komputer, yang kebanyakan mengambil objek-objek dua dimensi (2D). Model Grafik 2D merupakan kombinasi dari model geometri (juga disebut sebagai grafik vektor), gambar digital (raster graphics), fungsi matematika, dan sebagainya. Komponen-komponen ini dapat dimodifikasi dan dimanipulasi oleh transformasi geometri dua dimensi, seperti translasi, rotasi, dan dilatasi. 
Model-model yang digunakan pada disain grafis 2D biasanya tidak mendukung bentuk-bentuk tiga-dimensi, atau fenomena yang bersifat tiga dimensi, seperti pencahayaan, bayangan, pantulan, refraksi, dan sebagainya. Namun demikian, mereka dapat membuat model berlapis-lapis (layer); nyata, translusen, dan transparan, yang dapat ditumpuk dalam urutan tertentu. Urutan tersebut biasanya didefinisikan dengan angka (kedalaman lapisan, atau jarak dari si penglihat).
Macam-Macam objek 2D :

  • Line
  • Circle
  • Arc
  • Polygon
  • Text
  • Section
  • Rectangle
  • Ellips
  • Donut
  • Star
  • Helix

Dari macam-macam objek 2d ini saya akan membahas 3 macam:
Circle
Circle atau lingkaran adalah object 2 dimensi yang memiliki ukuran diameter dan jari-jari. Circle atau lingkaran merupakan kumpulan titik-titik yang tak berhingga dan saling berhubung.

Line
Objek line/garis adalah objek salah satu 2 dimensi yang sangat mendasar dan sering digunakan untuk perancangan gambar kerja. Line berasal dari 2 titik yang saling terhubung.
Polygon
Polygon adalah suatu fungsi yang mirip dengan polyline, hanya sajahasilnya adalah kurva tertutup. Pada polygon digunakan konsep array dalam menyatakan objek 2D sebagaikumpulan titik 2D. Polygon digunakan untuk merepresentasikan objek-objek duadimensi.

Primitive Objek Open GL

Primitive Objek Open GL


A.  Pengenalan GLUT

Sistem Koordinat didalam laptop ada 3 yaitu :
-    Open GL
-    Sistem Operasi
     Mengikuti resolusi (variabel)
-    Fisik  (bersifat statis)
 1.  GLUT (OpenGL Utility Toolkit)
Dikembangkan oleh Mark Kilgard. GLUT merupakan pengembangan dari OpenGL dimana memiliki keunggulan sebagai berikut:
- Mudah, portable window manager, menggunakan callback functions untuk menambahkan interaksi dari user.
- Didesain untuk aplikasi dengan level kecil hingga menengah.
- Distribusi library bebas tetapi tidak open source.
2. Pemrograman Berbasis Event
GLUT pada dasarnya dibangun untuk menciptakan aplikasi grafis menggunakan pemrograman yang bersifat prosedural. Di dalamnya terdapat fungsi main loop yang diatur oleh GLUT dan looping yang terjadi dalam aplikasi bertujuan untuk penanganan fungsi-fungsi callback sebagai input dari user seperti fungsi redraw, mouse, keyboard, joystick, dan lain-lain.

 B.  Primitif Objek

Primitif objek terdiri atas :
-   Titik
    Yaitu Vertex, dimana vertex merupakan acuan dasar
-   Garis
    Yaitu Line/Edge
-   Bangun 2D (Face)

 1.  Fungsi Dasar Menggambar Titik
      Berikut adalah beberapa fungsi didalam menggambar suatu titik :
-    glVertex2i(x,y)
     Yaitu suatu fungsi untuk menggambar titik pada koordinat x dan y, dengan nilai satuan berupa integer. Contoh glVertex2i(10,10);
-    glVertex2f(x,y)
     Yaitu suatu fungsi untuk menggambar titik pada koordinat x dan y, dengan nilai satuan berupa float. Contoh glVertex2f(10.0,10.0);
-    glVertex2d(x,y)
     Yaitu suatu fungsi untuk menggambar titik pada koordinat x dan y, dengan nilai satuan berupa double. Contoh glVertex2d(10.0,10.0);

2.  Primitif Objek
 Berikut adalah primitive objek yang akan dipergunakan didalam pembuatan suatu objek :
-    # define GL_POINTS
     Primitif objek ini dipergunakan untuk menciptakan suatu titik.
-   # define GL_LINES
     Primitif objek ini adalah suatu primitive objek guna menciptakan suatu garis.
 Rumus :
vertex   = 2N
 -    # define GL_LINE_LOOP
-    # define GL_LINE_STRIP
Rumus pada line strip :






 ∑vertex   = N + 1




 -    # define GL_TRIANGLES
     Triangle atau segitiga adalah tiga buah titik yang terhubung menjadi suatu segitiga dengan blok di tengahnya.
Pada penggunaan primitive objek ini kita harus menggunakan minimal 3 buah vertex guna membentuk suatu objek.
Rumus :


vertex   = 3N




Keterangan :
N = Jumlah Segitiga
 -    # define GL_TRIANGLES_STRIP
      Pada triangles strip jumlah vertex yang dipergunakan adalah 4 buah vertex.
Ilustrasi :
  

-     # define GL_TRIANGLE_FAN
      Triangles fan adalah pembuatan suatu objek dengan menggunakan segitiga dimana hanya menggunakan 1 titik pusat saja.
Ilustrasi :

-    # define GL_QUADS
     Quad atau segempat adalah empat buah titik yang terhubung menjadi suatu segempat dengan blok di tengahnya.

 -    # define GL_QUADS_STRIP
      Pada quads strip 4 buah vertex merupakan 1 kelompok.
Ilustasi :   Langkah rendering pada quads strip :
a.       Nomor yang berhadap (membentuk 2 garis yang sejajar)
b.      Nomor ganjil dengan nomor ganjil dipertemukan
c.       Nomor genap dengan nomor genap dipertemukan
d.      Garis yang tersisa akan dipertemukan

 -    # define GL_POLYGON
Polygon merupakan suatu fungsi yang mirip dengan polyline, tetapi menghasilkan kurva tertutup dengan blok warna (fill). Rendering yang dimiliki oleh GL_POLYGON  sama dengan GL_TRIANGLE_FAN
 Catatan :
a.      glLineWidth yaitu suatu fungsi yang berfungsi untuk mengatur tebalnya garis
b.      glPointSize yaitu suatu fungsi yang berfungsi untuk mengatur besarnya suatu objek
c.    gluOrtho2D yaitu suatu fungsi untuk mengatur proyeksi hasil eksekusi dan mendefinisikan besarnya sistem koordinat dengan urutan kiri-kanan dan bawah-atas.

 3.  Color
          Untuk memberi warna pada objek, seperti titik atau garis, dapat dilakukan dengan menggunakan fungsi à glColor3f(red,green,blue);
           Di mana red, green, blue berada pada 0 sampai dengan 1, yang menunjukkan skala pencerahan dari masing-masing skala.
           Berikut adalah beberapa fungsi color :
  1. glColor3f(0,0,0);//black
  2. glColor3f(0,0,1);//blue
  3. glColor3f(0,1,0);//green
  4. glColor3f(0,1,1)//cyan
  5. glColor3f(1,0,0)//red
  6. glColor3f(1,0,1)//magenta
  7. glColor3f(1,1,0);//yellow
  8. glColor3f(1,1,1);//white
 4.  SegiEmpat
      Berikut adalah pembuatan suatu objek berupa segiempat :
Proses Rendering :
SegiEmpat (posx, posy, w, h)
Maka sintaks pembuatan segiempat :
glBegin (GL_QUADS);
glVertex2i (posx, posy);
glVertex2i (posx-w, posy);
glVertex2i (posx-w, posy-h);
glVertex2i (posx,posy-h);

C. Transformasi Objek

     Transformasi terdiri atas beberapa fungsi yaitu :
1.  Fungsi dasar untuk Translasi (perubahan posisi) objek
Penulisan :
glTranslate(d,f) (x,y,z)
a. Fungsi dasar untuk Rotasi objek
Penulisan :
glScale(d,f) (x,y,z)
b. Fungsi dasar untuk skala (perubahan ukuran) objek
Penulisan :
glRotate (d,f) (besarnya sudut, x , y , z) dan  besarnya sudut, -1-1, -1-1, -1-1
 Contoh  pada penggunaan glTranslate :
 
Catatan :
glPushMatrix berfungsi untuk menyimpan koordinat yang ada. Sedangkan glPopMatrix adalah suatu fungsi guna memangil suatu fungsi yang telah disimpan pada glPushMatrix.

Pengenalan Open GL

PENGENALAN OPEN GL

Definisi

OpenGL adalah suatu spefikasi grafik yang low-level yang menyediakan fungsi untuk pembuatan grafik primitif termasuk titik, garis, dan lingkaran dan digunakan untuk keperluan-keperluan pemrograman grafis.
OpenGL bersifat Open-Source, multi-platform dan multi-language serta digunakan mendefinisikan suatu objek, baik objek 2 dimensi maupun objek 3 dimensi.
OpenGL juga merupakan suatu antarmuka pemrograman aplikasi (application programming interface (API) yang tidak tergantung pada piranti dan platform yang digunakan, sehingga OpenGL dapat berjalan pada sistem operasi Windows, UNIX dan sistem operasi lainnya.
OpenGL pada awalnya didesain untuk digunakan pada bahasa pemrograman C/C++, namun dalam perkembangannya OpenGL dapat juga digunakan dalam bahasa pemrograman yang lain seperti Java, Tcl, Ada, Visual Basic, Delphi, maupun Fortran. Namun OpenGL di-package secara berbeda-beda sesuai dengan bahasa pemrograman yang digunakan. Oleh karena itu, package OpenGL tersebut dapat di-download pada situs http://www.opengl.org sesuai dengan bahasa pemrograman yang akan digunakan.
OpenGl melayani dua tujuan :
•Untuk menyembunyikan kompleksitas dari interfacing dengan berbagai 3D accelerators,
memamerkan oleh programmer dengan satu, seragam API.
•Untuk menyembunyikan kemampuan yang berbeda dari hardware platform, oleh semua yang
memerlukan mendukung implementasi penuh fitur opengl set (menggunakan software
emulation jika diperlukan).

Evolusi OpenGL


Pendahulu openGL adalah IRIS GL dari Silicon Grapics.Padamulanya adalah library grafis 2D,yang berefolusi menjasi API program 3D untuk workstation canggih milik perusahaan tersebut.
OpenGL adalah hasil dari usaha SGI untuk mengembangkan dan meningkatkan kemampuan portable IRIS.API grafis yang baru akan menawarkan kemampuan IRIS GL tetapi dengan standar yang lebih terbuka,dengan input dari pembuatan hardware lain dan sistem operasi lain,dan akn memudahkan adaptasi ke hardware platform dan sistem operasi lain.
Untuk lebih mempopulerkan openGL SGI mengijinkan pihak lain untuk mengembangkan standart openGL,dan beberapa vendor menyambut hal tersebut dengan membentuk OpenGL Architecture Review Board (ARB) Pendiri openGL adalah SGI,Digital Equepment Corporation,IBM,Intel dan Microsoft,pada tanggal 1 juli 1992 OpenGL versi 1.0 diperkenalkan.
Letak openGL dalam aplikasi gambar di atas pada umumnya ketika aplikasi berjalan program tersebut memanggil banyak fungsi,beberapa yang dibuat oleh programer dan beberapa yang disediakan oleh sistem operasi bahasa pemrograman.Aplikasi windows membuat output pada layar biasanya dengan memanggil sebual API windows yang disebut Graphics Devise Interfase,yang memungkinkan sebagai penulisan teks pada sebuah windows,menggambar garis 2D sederhana dan lainnya.Implementasi dari openGL mengambil permintaan grafis dari aplikasi dan membangun sebuah gambar berwarna dari grafis 3D,kemudian memberikan gambar tersebut ke GDI untuk ditampilkan pada layar monitor.

Cara kerja openGL

OpenGL lebih mengarah pada prosedural daripada sebuah deskriptif API grafis.Untuk mendeskripsikan scene dan bagaimana penampilannya,sebenarnya programer lebih tau untuk menentukan hal-hal yang dibutuhkan untuk menghasilkan efek yang di inginkan.Langkah tersebut termasuk memanggil banyak perintah openGL,perintah tersebut digunakan untuk menggambarkan grafis primitif seperti titik,garis dan poligon dalam tiga dimensi.Sebagai tambahan,openGL mendukung lighting,shading,texture mapping,blending,transparancy,dan banyak kemampuan efek khusus lainnya.
OpenGL mempunyai bnayak fungsi dan penggunaan perintah yang sangat luas, penggunaan openGL membutuhkan library tambahan yang harus di letakkan pada direktory system dari windows (OS),yaitu :
•OpenGL32.dll
•Glu32.dll
•Glut32.dll 

Inisialisasi awal
Inti dari tahapan ini adalah mengatur view port dan persepektif untuk penampilan obyek ke dalam layar monitor,viewport adalah besarnya layar monitor(image) yang dipakai untuk menampilkanobyek,sedangkan persepektif yang dimaksud adalah pengaturan sumbu z dalam penampilan obyek 3 dimensi,sehingga user dapat melihat obyek seolah-olah dalam bidang 3 dimensi (X-Y-Z),selain itu penggambaran obyek yang dilakukan oleh programer juga dapat menggunaan koordinat 3 dimensi.
Selain ke dua tujuan di atas pada tahap ini juga dilakukan koneksi awal dengan library openGL, koneksi ini dilakukan supaya fungsi-fungsi yang di sediakan openGL dapat digunakan.Fungsi/prosedur yang digunakan :
•LoadGlut(‘glut32.dll) - pemanggilan library openGL
•InitGL – inisialisasi openGL awal yang harus dilakukan
•glViewport – untuk pengaturan viewport
•glMatrixMode – pengaturan viewport
•gluPerspective – pengaturan persepektif

Contoh script untuk inisialisasi openGL :
Try
LoadGlut(‘glut32.dll’);
InitGL;
Exept on e := exeption do
Begin
messageDlg{e.message,mtError,[mbOk],};
Halt {1};
End;
End;
Script di atas merupakan script yang paling sederhana, dalam artian minimal diperlukan
untuk menginisialisasi penggunaan openGL.Fungsi-fungsi lain seperti yang disebut diatas
seperti glViewport,glMatrixMode,dapat di tambah kan pada script sesuai dengan kebutuhan.

OpenGL adalah suatu spefikasi grafik yang low-level yang menyediakan fungsi untuk pembuatan grafik primitif termasuk titik, garis, dan lingkaran. OpenGL digunakan untuk keperluan-keperluan pemrograman grfis.OpenGL bersifat Open-Source, multi-platform dan multi-language serta digunakan mendefinisikan suatu objek, baik objek 2 dimensi maupun objek 3 dimensi. OpenGL juga merupakan suatu antarmuka pemrograman aplikasi (application programming interface (API) yang tidak tergantung pada piranti dan platform yang digunakan, sehingga OpenGL dapat berjalan pada sistem operasi Windows, UNIX dan sistem operasi lainnya.

Tujuan

  • Untuk menyembunyikan kompleksitas dari interfacing dengan berbagai 3D accelerators,
    memamerkan oleh programmer dengan satu, seragam API.
  • Untuk menyembunyikan kemampuan yang berbeda dari hardware platform, oleh semua yang memerlukan mendukung implementasi penuh fitur openGL set (menggunakan software emulation jika diperlukan).

Sejarah OpenGL

  • OpenGL Dikembangkan oleh Silicon Graphics yang awalnya berupa GL(Glut Library). OpenGL adalah hasil dari usaha SGI untuk mengembangkan dan meningkatkan kemampuan portable IRIS.
  • Untuk lebih mempopulerkan openGL SGI mengijinkan pihak lain untuk mengembangkan standart openGL,dan beberapa vendor menyambut hal tersebut dengan membentuk OpenGL Architecture Review Board (ARB).
  • Pendiri openGL adalah SGI,Digital Equepment Corporation,IBM,Intel dan Microsoft,pada tanggal 1 juli 1992 OpenGL versi 1.0 diperkenalkan.

GLUT (GL Utility Toolkit)

  • Merupakan pengembangan dari OpenGL yang didesain untuk aplikasi dengan level kecil hingga menengah dan menggunakan callback functions untuk menambahkan interaksi dari user.
  • Untuk pemrograman OpenGL menggunakan C++, diperlukan library tambahan yaitu :
-          glut.h yang dicopy ke drive:\Program Files\Microsoft Visual Studio 2010\Vc\include\GL
-          glut32.lib  yang dicopy ke drive:\Program Files\Microsoft Visual Studio 2010\Vc\lib
-          glut32.dll yang dicopy ke drive:\Windows\System
-

Klasifikasi Fungsi

-          Primitive : berupa geometric, images
-          Attribute  : berupa color, line type, light, texture
-          Viewing : berupa virtual camera
-          Control : turn fuction ON / OFF
-          Windowing : window, mouse, keyboard

Subnetting

SUBNETTING


TUJUAN PRAKTIKUM :
  1. Memahami Subnetting Classfull & Classless secara CIDR / VLSM.
  2. Dapat mengkonfigurasi IP pada jaringan Local Area Network.

PENDAHULUAN
Classfull
            Pengalokasian host pada jaringan dengan menggunakan sebuah subnet mask yang sama,  biasanya menggunakan protocol RIPv1 dan IGRP, dimana protocol ini  tidak mempunyai field untuk menyimpan informasi subnet sehingga informasi-informasi subnet tidak dikirimkan.
            Ini berarti jika sebuah router menjalankan RIP mempunyai sebuah subnet mask dengan nilai tertentu, router beranggapan bahwa semua interface yang berada di dalam alamat classfull routing.  Jika kita mencampurkan panjang subnet yang berbeda dalam sebuah network yang menjalankan protocol RIP atau IGRP maka network itu tidak akan bekerja.
Classless
            Pengalokasian host/IP yang dapat menggunakan subnet mask yang berbeda, yang didukung oleh routing protocol (RIPv2, OSPF, dan EIGRP) yang dapat memberikan informasi subnet, sehingga dapat menghemat sejumlah alamat host/IP.
Subnetting :
Mengapa dilakukan subnetting ?
1.    Untuk mengurangi lalu lintas jaringan, mengurangi broadcast storm/memperkecil broadcast domain. (reduced network traffic)
  1. Mengoptimalisasi unjuk kerja jaringan (optimized network performance)
  2. Pengelolaan yang disederhanakan yang memudahkan kita dalam pengelolaan,mengidentifikasikan permasalahan (simplified management)
  3. Penghematan alamat IP
Pada dasarnya subnetting adalah mengambil bit-bit dari bagian host sebuah alamat IP dan me-reserve atau menyimpannya untuk mendefinisikan alamat subnet. Konsekuensinya adalah semakin sedikit jumlah bit untuk host. Jadi semakin banyak jumlah subnet, semakin sedikit jumlah bit yang tersedia untuk mendefinisikan host bit.


CIDR ( Classless Interdomain Domain Routing)
Perhitungan subnetting pada CIDR merupakan perhitungan lanjutan mengenai IP Addressing dengan menggunakan metode VLSM ( Variable Length Subnet Mask ), namun sebelum membahas VLSM perlu direview terlebih dahulu subnetting menggunakan CIDR.
Pada tahun 1992 lembaga IEFT memperkenalkan suatu konsep perhitungan IP Address yang dinamakan supernetting atau classless inter domain routing (CIDR), metode ini menggunakan notasi prefix dengan panjang notasi tertentu sebagai network prefix, panjang notasi prefix ini menentukan jumlah bit sebelah kiri yang digunakan sebagai Network ID, metode CIDR dengan notasi prefix dapat diterapkan pada semua kelas IP Address sehingga hal ini memudahkan dan lebih efektif. Menggunakan metode CIDR, kita dapat melakukan pembagian IP address yang tidak berkelas sesukanya tergantung dari kebutuhan pemakai.
Sebelum kita melakukan perhitungan IP address menggunakan metode CIDR berikut ini adalah nilai subnet yang dapat dihitung dan digunakan :
Tabel 1. Tabel Nilai CIDR
Subnet Mask
CIDR
Subnet Mask
CIDR
255.128.0.0
/9
255.255.240.0
/20
255.192.0.0
/10
255.255.248.0
/21
255.224.0.0
/11
255.255.252.0
/22
255.240.0.0
/12
255.255.254.0
/23
255.248.0.0
/13
255.255.255.0
/24
255.252.0.0
/14
255.255.255.128
/25
255.254.0.0
/15
255.255.255.192
/26
255.255.0.0
/16
255.255.255.224
/27
255.255.128.0
/17
255.255.255.240
/28
255.255.192.0
/18
255.255.255.248
/29
255.255.224.0
/19
255.255.255.252
/30

Catatan penting dalam subnetting ini adalah penggunaan oktat pada subnet mask dimana :
-       untuk IP address kelas C yang dapat dilakukan CIDR-nya adalah pada oktat terakhir karena pada IP Address kelas C subnet mask default-nya adalah 255.255.255.0
-       untuk IP address kelas B yang dapat dilakukan CIDR-nya adalah pada 2 oktat terakhir karena pada IP Address kelas B subnet mask default-nya adalah 255.255.0.0
-       untuk IP address kelas A yang dapat dilakukan CIDR-nya adalah pada 3 oktat terakhir karena IP address kelas A subnet mask default-nya adalah 255.0.0.0

Contoh: Subnetting pada jaringan classfull dengan alamat network 192.168.1.0,                             seperti yang diperlihatkan pada gambar 2?