welcome

Selasa, 09 April 2013

praktikum ke 4 grafika komputer

membuat objek garis dengan DDA dan Bresenham


#include < windows.h >
#include < stdio.h >
#include < stdlib.h >
#include < string.h >
#include < stdarg.h >
#include < glut.h >
#include < math.h >

void display(void)
{
//set display-window background color to white
glClearColor(1.0,1.0,1.0,0.0);
//set projection parameters
glMatrixMode(GL_PROJECTION);
gluOrtho2D(0.0, 300.0, 0.0, 300.0);
}
void setPixel(GLint xCoordinate, GLint yCoordinate)
{
glBegin(GL_POINTS);
glVertex2i(xCoordinate, yCoordinate);
glEnd();
glFlush();
}
//Procedure Bresenham line-drawing untuk |m| < 1.0
void lineBres(GLint x0, GLint y0, GLint xEnd, GLint yEnd)
{
GLint dx = (float)fabs((float) xEnd - x0);
GLint dy = (float)fabs((float) yEnd - y0);
GLint p = 2 * dy - dx;
GLint twoDy = 2 * dy;
GLint twoDyMinusDx = 2 * (dy - dx);
GLint x,y;
//determine which endpoint to use as start position
if (x0 > xEnd){
x = xEnd;
y = yEnd;
xEnd = x;
} else {
  x = x0;
  y = y0;
  }
  setPixel(x,y);
  while (x<xEnd){
  x++;
  if (p<0)
  p += twoDy;
  else {
  y++;
  p += twoDyMinusDx;
  }
  setPixel(x,y);
  }
  }
/*void drawMyLine(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0,0.0,0.0);
glPointSize(4.0);
GLint x0 = 100;
GLint y0 = 150;
GLint xEnd = 200;
GLint yEnd = 250;
lineBres(x0,y0,xEnd, yEnd);
}*/

void drawMyLine(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(0.0,0.1,0.0);
glPointSize(4.0);
GLint x0 = 50;
GLint y0 = 50;
GLint xEnd = 200;
GLint yEnd = 200;
lineBres(x0,y0,xEnd, yEnd);

glColor3f(0.0,1.0,0.0);
glPointSize(4.0);
GLint x1 = 100;
GLint y1 = 50;
GLint x2 = 200;
GLint y2 = 200;
lineBres(x1,y1,x2, y2);

glColor3f(0.0,0.0,1.0);
glPointSize(4.0);
GLint x3 = 150;
GLint y3 = 50;
GLint x4 = 200;
GLint y4 = 200;
lineBres(x3,y3,x4, y4);
}
int main(int argc, char** argv)
{
//initialize GLUT
glutInit(&argc, argv);
//initialize display mode
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
//set display-window width & height
glutInitWindowSize(400,400);
//set display-window upper-left position
glutInitWindowPosition(0,0);
//create display-window with a title
glutCreateWindow("Digital Differential Analiyzer Algorithm");
//initialize OpenGL
display();
//call graphics to be diplayes on the window
glutDisplayFunc(drawMyLine);
//glutDisplayFunc(drawMyLine1);
//display everything and wait
glutMainLoop();
return 0;
}




     //main
int main (int argc, char **argv){
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE);
glutInitWindowSize(400,400);
glutInitWindowPosition(100,100);
glutCreateWindow("circle.cpp");
glClearColor(0.0,0.0,0.0,0.0);
glutDisplayFunc(disp);
glutKeyboardFunc(keyb);
glutReshapeFunc(reshape);
glutMainLoop();
return 0;
}


// disp
void disp(void){
double angle;
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_LINE_LOOP);
for (int i=0; i<num_lines1; i++){
angle = i*2*3.14/num_lines1;
glVertex2f(cos(angle),sin(angle));
}
glEnd();

glBegin(GL_LINE_LOOP);
    for(int i =0;i<num_lines;i++){
            angle = i*2*3.14/num_lines;
        glVertex2f(cos(angle)/5,sin(angle));
    }
  glEnd();

  glBegin(GL_LINE_LOOP);
    for(int i =0;i<num_lines;i++){
            angle = i*2*3.14/num_lines;
        glVertex2f(cos(angle)/5,sin(angle)/5);
    }
  glEnd();

glutSwapBuffers();
}

// keyb
void keyb (unchar k, int x, int y){
switch (k){
case 'q' :
exit (0);
break;
case '+':
if(num_lines < 99){
num_lines++;
cout << "Circle consist of " << num_lines << "lines" << endl;
glutPostRedisplay();
}
break;
case '-':
if(num_lines > 3) {
num_lines --;
cout << "Circle consist of " << num_lines << "lines" << endl;
glutPostRedisplay();
}
break;
}
}

// reshape
void reshape (int x, int y){
if (x<y)
glViewport(0, (y-x) / 2, x, x);
Else
glViewport((x-y) / 2, 0, y, y);
}

Rabu, 27 Maret 2013

pirates of silicon valley

yuuuuuuuuuk... kita simak Isi dari cerita film pirates of silicon valley...


Dalam film ini menceritakan, bagaimana cara menciptakan sesuatu dengan tekad dan kemauan yang tinggi. Film ini yang bercerita tentang perjalanan hidup dua pahlawan sejarah komputerisasi yaitu microsoft dan apple.sosok itu antara lain adalah Steve jobs (Nuh Wyle) dan Steve Wozniak yang merupakan orang penting atass berdirinya Apple Computer,  dan orang-orang penting terhadap berdirinya Microsoft corporation
yaitu Bill Gates (Anthony Michael Hall), Paul, Ballmer dan kawan-kawan. Steve Jobs yang selalu di temani Wozniak mendirikan Apple di garasi rumah jobs.  Sedangkan Bill Gates orang yang pandai dan cerdas dengan program komputerisasi dan hobi mengotak atik sistem in selalu ditemani Paul Allen yang percaya bahwa masa depan itu adalah software.


Tapi dengan kepintaran Bill dan Paul mereka mampu mendapatkan uang tambahan, (nah ini jangan ditiru yakh) dari cara yang tidak terpuji, dan beresiko, yaitu menyewakan kamar motelnya untuk tempat perbuatan maksiat.
Steve Jobs malah lebih parah lagi, ia dan Steve Wosniak membuat prototype komputer yang sekarang kita kenal sebagai PC. merekapun memamerkan komputer yang dilengkapi dengan monitor dalam sebuah grup pecinta komputer dan mendapatkan order pertama 50 unit. Mereka berdua tenyata beruntung juga sih , setelah berkali-kali mencari modal baik berupa pinjaman dari Bank serta menjual Mobilnya, Mike Markula pun datang berkunjung, dia seorang pegawai Intel Corporation, yang saat itu sedang mencari peluang untuk membuka suatu bisnis, dan dia menawarkan 250ribu dollar untuk proyek Apple , merekapun memulai proyek Apple dengan cara lebih professional, hingga diadakanlah suatu pameran komputer dari Apple, dari pameran itu para pengunjungpun kagum dan tertarik pada produk mereka. Dari sinilah Apple bermula dan berkembang  dengan cepat hingga mereka mampu mendirikan kantor dan menerbitkan Apple 2 ke pasar yang mampu bersaing dengan IBM.

Saat Jobs dan Apple-nya naik daun, Bill Gates masih asik dengan Microsoft yang belum bisa tumbuh dan berkembang, melihat Apple yang telah sukses dan membuat IBM seperti kalah bersaing, Bill Gates mulai  berfikir, bagaimana caranya supaya pihak IBM membutuhkannya, Akhirnya Bill Gates membuat kejutan besar dengan memutuskan untuk bekerja sama dengan IBM.
merekapun segera menjalankan niat tersebut dengan mendatangi Kantor IBM, Bill Gates menawarkan seperangkat sistem operasi yang ia klaim mampu berintegrasi dengan komputer buatan IBM. Ia menamainya DOS (Disk Operating System).

Namun Bill tak pernah membuat satu sistem operasi apapun. Dengan cerdik Bill Gates dengan dibantuan Paul berhasil membeli sistem operasi dari Seatle dengan harga 50 ribu Dollar, dengan sedikit modifikasi dan menyempurnakannya, ia kemudian menjualnya ke IBM dengan harga yang jauh lebih mahal.
Dari sinilah Microsoft mulai dikenal. Steve Jobs pun tak maw kalah, untuk bisa terus menyalip IBM di pasar komputer ia butuh lebih dari sekadar inovasi biasa. Untuk tetap bisa menguasai pasar Apple menerbitkan Lisa, komputer ini ia beri nama dari nama anak pertamanya. Lalu dengan kepintarannya Jobs memanfaatkan proyek gagal dari perusahaan Xerox berupa teknologi mouse dan GUI ( Graphic user interface). Ia berusul untuk pembuatan komputer pribadi yang ia beri nama Macintosh.

Mengetahui komputer keluaran terbaru dari Apple yaitu Lisa, Bill Gates tak bisa diam. Dia mengambil langkah berani dengan mengajak Jobs bekerja sama.dengan tujuan utama mempelajari teknologi Grafis dan Sistem Operasinya, sungguh beruntung Bill Gates dan rekan-rekannya, niatnya hanya menginginkan Lisa, namun Macintosh pun diperolehnya juga, Microsoft mendapatkan 3 prototype dari Apple.
Akhirnya Microsoft saat itu belum apa-apa dibandingkan Apple dapat sesuka hati mengutak-atik prototype Macintosh Apple yang baru akan diliris setahun kemudian, hal ini disebabkan karena pengakuan Bill Gates bahwa IBM selaku saingan Apple menginginkan produk dari Microsoft, sehingga Steve pun harus sedikit khawatir dengan IBM dan akhirnya menerima Microsoft tanpa memikirkan resiko yang akan timbul seperti pada kenyataannya . Bill Gates secara diam-diam memodifikasi sistem operasi dan teknologi Macintosh dan meluncurkan apa yang kita kenal sekarang sebagai Windows, padahal saat itu Macintosh belum diluncurkan.Tapi karena kelihaian, Bill Gates dapat mengelabui Apple, dari situlah Microsoft bekembang pesat dan jutru menjadi saingan berat bagi Apple.
Sementara itu pihak Apple sendiri justru terjadi persaingan antara Macintosh Developers dan Apple II Developers, tapi Steve Jobs malah menganggap hal seperti ini sebagai sesuatu yang hebat, dan dia menganggap macintosh adalah yang terbaik diantara pendahulunya yaitu Lisa dan Apple II.
Bagi orang pada umumnya saat itu dapat dikata bahwa Apple menghancurkan dirinya sendiri.
Akhirnya suatu hari Steve Jobs dipecat dari Apple, yang pada saat itu John Sculley yang menjadi Presiden di Perusahaan Apple (apes banget yakh nasibnya om stevie, tapi jangan sedih dulu, mari simak lagi kelanjutannya), steve dianggap membawa dampak buruk bagi kelanjutan Apple, namun semenjak ditinggal om Steve Apple justru dapat dibilang kurang Inovatif, maka pada tahun 1997 om Steve Jobs dipanggil lagi untuk bekerja secara resmi dengan Apple.
Dan Akhir cerita, Bill gates telah menjadi orang terkaya di dunia dan telah juga memiliki saham Apple Computer .
Kesimpulan :: kadang apa yang kita anggap benar, sebagian orang hanya menganggap semua hanya omong kosong belaka. tidak sepantas nya kita untuk terjatuh dalam sebuah hal, jika tali untuk bergantung masih tersedia untuk kita, itulah hal yang dilakukan oleh paman Bill Gates, saat itu dia dtertawakan oleh pihak-pihak perusahaan komputer atas hal yang ia lakukan, tapi dia tak pernah menyerah untuk selalu bisa menaiki tangga kehidupan yg terjal, tapi sayangnya dengan cara yang kurang baik..
Tapi, yang namanya manusia, sudah jelas tidak ada yang sempurna, walaupun untuk diri kita sendiri. dari sekarang, "lakukanlah hal yang terbaik dari yang terbaik terhadap hidup kita sendiri, syukur-syukur bisa menguntungkan orang lain".

semoga dari cerita di atas, bisa kita ambil manfaatnya :)
selamat membaca :)




Rabu, 13 Maret 2013

kisah perjalanan hidup seorang guru honor

Perjalanan hidup seseorang bak roda yang berputar,kadang kita terlena ketika kita sedang berada diatas, dan seringnya kita berputus asa ketika kita sedang diuji dengan kegagalan dalam berusaha. Dulu ketika selesai wisuda , saya mencoba mengabdikan diri sebagai pengajar di salah satu sekolah tempat saya  tinggal. dari situ saya mengawali pekerjaan saya sebagai guru, pada waktu itu saya di gaji sekitar 20 ribu 1 bulan, karena saya hanya sebagai guru honor ,jadi gajinya seadanya. tapi disitu saya tidak pernah berpikir saya hanya mengajar saja, tetapi saya mempunyai keinginan untuk mencari pekerjaan tambahan, dari situ saya berpikir bahwa saya ingin bekerja sampingan dengan membuka kios kecil-kecilan, dari situ usaha saya mulai berkembang, dan sekarang sudah menjadi toko yang lumayan besar dari kios tadi menjadi toko.
ketika pada suatu hari ,terdengar kabar bahwa akan di laksanakan test pegawai negri sipil (PNS), dari situ saya mengurus segala sesuatunya dan halangan rintangan jelas saja ada seperti uang tidak cukup untuk mengurus surat-surat, dan fotocopy segala macam,
kemudian saya meminta kepada orangtua saya dan sekaligus meminta restu dari orangtua saya, dan niat serta kerja keras saya selama ini, membuahkan hasil. Allhamdulillah ketika pengumuman keluar, saya sempat merasa putus asa dan ragu-ragu ingin melihat hasil pengumuman yang keluar, dan pada akhirnya salah satu teman saya , dia datang kerumah saya dengan wajah yang gembira, dan dia memeluk erat saya dan mengatakan bahwa saya LULUS jadi PNS ,, setelah itu saya memeluk kedua orangtua saya dan saya bersujud syukur,,,
dan pada akhirnya saya sekarang sudah bisa membeli motor, dan membeli ladang, dan memperbaiki rumah saya. dan itu tidak lepas dari kerja keras ,niat, dan berdo'a kepada Allah SWT. 
Jadi,_ kesimpulan yang bisa saya ambil dari kisah seorang guru honor , yang di sekolahkan dengan keadaan yang sederhana, dengan kedua orang tuanya yang tidak berkecukupan dan sekarang sudah berhasil mengembangkan dirinya sendiri, dan lebih mandiri dalam kehidupannya, dan itu semua tidak lepas dari niat,kerja keras,pantang menyerah, dan berdo'a kepada Allah SWT.

Selasa, 30 Oktober 2012

fungsi bilangan Fibonaci dengan cara iteratif

berikut source codenya :)

#include <cstdlib>
#include <iostream>

using namespace std;
class fibonaci{
friend istream& operator >> (istream&, fibonaci&);
friend ostream& operator << (ostream&, fibonaci&);

public :
void iteratif();
void iteratif2();
private:
        int a,b,c,batas;
};

istream& operator >>(istream& in, fibonaci& masuk){
cout<<"Dengan menggunakan Iteratif while " <<endl;
cout<<"Masukkan batas nilai :"; in>>masuk.batas;
cout<<"Bilangan Fibonacci < " << masuk.batas <<" adalah\no,1";
}

ostream& operator << (ostream& out, fibonaci& keluar){
keluar.a=0;keluar.b=1;
while(true){
keluar.c=keluar.a+keluar.b;
if(keluar.c>keluar.batas) break;
cout<<"," <<keluar.c;
keluar.a=keluar.b;
keluar.b=keluar.c;
}
}
void fibonaci::iteratif(){
a=0;b=1;
cout<<"Bilangan Fibonacci < " <<batas <<" adalah\no,1";
do{
c=a+b;
if(c>batas) break;
cout<<"," <<c;
a=b;
b=c;
}
while(true);
}

void fibonaci::iteratif2(){
a=0;b=1;
cout<<"Bilangan Fibonacci < " <<batas <<" adalah\no,1";
for(c=1;c<batas;c++){
c=a+b;
cout<<"," <<c;
a=b;
b=c;
}
}

int main(int argc, char *argv[])
{
fibonaci x;

cout<<"Menampilkan deret bilangan fibonacci iterative ";
cout<<endl;
cin>>x;
cout<<x;
cout<<endl;
cout<<endl;

cout<<"Dengan do while " <<endl;
x.iteratif();
cout<<endl;
cout<<endl;

cout<<"Dengan For " <<endl;
x.iteratif2();
cout<<endl;

system("PAUSE");
return EXIT_SUCCESS;
}