Fractal

4
Fraktal Kapita Selekta Sains Komputasi (Dosen: Prof.Dr.rer.nat. Umar Fauzi) Muhaza Liebenlito(20912020) February 5, 2013 1 Pendahuluan Hampir setiap sistem fisis di alam dan struktur dari tubuh manusia tidak sepenuhnya berben- tuk standar geometri, seperti yang digambarkan oleh Euclid. Geometri Fraktal menawarkan cara berbeda dari geometri euclid untuk mendeskripsikan, mengukur, dan memprediksi fenomena-fenomena alam. Sifat utama fratktal yakni self-similarity artinya suatu bentuk yg besar disusun dari bentuk-bentuk yg kecil yg serupa dengannya. Contohnya adalah bentuk rupa daun, dimana daun tersusun dari bentuk-bentuk kecil yg menyerupai bentuk besarnya. Kali ini penulis mencoba untuk membuat suatu fraktal daun dengan menggunakan OpenGL. Bentuk fraktal ini pada dasarnya adalah generalisasi dari bentuk fraktal phytagoras. Berikut adalah hasil output program dari fraktal daun tersebut. 1

description

Geometri Fraktal menawarkancara berbeda dari geometri euclid untuk mendeskripsikan, mengukur, dan memprediksifenomena-fenomena alam. Sifat utama fratktal yakni self-similarity artinya suatu bentuk ygbesar disusun dari bentuk-bentuk yg kecil yg serupa dengannya

Transcript of Fractal

Page 1: Fractal

Fraktal

Kapita Selekta Sains Komputasi(Dosen: Prof.Dr.rer.nat. Umar Fauzi)

Muhaza Liebenlito(20912020)

February 5, 2013

1 Pendahuluan

Hampir setiap sistem fisis di alam dan struktur dari tubuh manusia tidak sepenuhnya berben-tuk standar geometri, seperti yang digambarkan oleh Euclid. Geometri Fraktal menawarkancara berbeda dari geometri euclid untuk mendeskripsikan, mengukur, dan memprediksifenomena-fenomena alam. Sifat utama fratktal yakni self-similarity artinya suatu bentuk ygbesar disusun dari bentuk-bentuk yg kecil yg serupa dengannya. Contohnya adalah bentukrupa daun, dimana daun tersusun dari bentuk-bentuk kecil yg menyerupai bentuk besarnya.

Kali ini penulis mencoba untuk membuat suatu fraktal daun dengan menggunakan OpenGL.Bentuk fraktal ini pada dasarnya adalah generalisasi dari bentuk fraktal phytagoras. Berikutadalah hasil output program dari fraktal daun tersebut.

1

Page 2: Fractal

(a) Orde 0 (b) Orde 1 (c) Orde 2

(d) Orde 3 (e) Orde 4 (f) Orde 5

(g) Orde 6 (h) Orde 7 (i) Orde 8

Figure 1: Gambar Fraktal Daun.

2

Page 3: Fractal

2 Souce Code Dalam C++

Listing 1: Simulasi Spreading of Fire

1 #include<GL/glut.h>2 #include<cmath>3 #include<cstdlib>4

5 using namespace std;6

7 double random(){8 return (double)rand()/RAND_MAX;9 }

10

11 void garis(float x1, float y1, float x2, float y2) {12 glColor3f(random(), random(), random());13 glBegin(GL_LINES);14 glVertex3f(x1, y1, 0.0);15 glVertex3f(x2, y2, 0.0);16 glEnd();17 }18

19 void shape(float x, float y, float r, float theta, float dTheta, int orde){20 float x0 = x;21 float y0 = y;22 float x1, y1, x2, y2, x3, y3;23 float mTheta = theta+dTheta;24 float nTheta = theta-dTheta;25 x1 = x0 + r*cos(mTheta);26 y1 = y0 + r*sin(mTheta);27 x2 = x0 + r*cos(nTheta);28 y2 = y0 + r*sin(nTheta);29 x3 = x0 + r*cos(theta);30 y3 = y0 + r*sin(theta);31 if (orde > 0){32 garis(x0, y0, x1, y1);33 garis(x0, y0, x2, y2);34 garis(x0, y0, x3, y3);35 r = r/sqrt(2.);36 shape(x1, y1, r/2, mTheta, dTheta, orde-1);37 shape(x2, y2, r/2, nTheta, dTheta, orde-1);38 shape(x3, y3, r, theta, dTheta, orde-1);39 }40 }41

42 void Draw(){43 glClear(GL_COLOR_BUFFER_BIT);44 int orde=9;45 garis(0.5, 0.3, 0.4, 0.11);46 shape(0.5, 0.3, 0.15, M_PI/3., M_PI/3., orde);47 glFlush();48 }49

3

Page 4: Fractal

50 void Initialize() {51 glClearColor(1.0, 1.0, 1.0, 1.0);52 glMatrixMode(GL_PROJECTION);53 glLoadIdentity();54 glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);55 }56

57 int main(int iArgc, char** cppArgv) {58 glutInit(&iArgc, cppArgv);59 glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);60 glutInitWindowSize(500, 500);61 glutInitWindowPosition(200, 200);62 glutCreateWindow("Fractal Phythagoras");63 Initialize();64 glutDisplayFunc(Draw);65 glutMainLoop();66 return 0;67 }

4