Programul construiește și desen trei dintre cele mai cunoscute fractalii „clasice“ -Kam Torus, setul de Julia și setul Mandelbrot.
Fractală - un concept matematic care se referă la o imagine abstractă, construit pe principiul de auto-similaritate folosind ecuații algebrice.
Programul calculează ecuații specifică valorile, le aduce într-o formă adecvată pentru a fi afișate într-o anumită culoare, iar apoi trage imaginea pe acesta. Pentru a construi pe expresia matematică a unei imagini grafice, programul calculează multe valori ale lui x și y, iar apoi acestea definesc punctele de puncte de ecran sau desenarea liniei. Detalii Următoarele construirea de toate cele trei fractali.
Fractal Kam Torus
Fractal Kam Torus trage secvență Tori -surfaces ordine 1, în spațiul tridimensional având forma o gogoasa, dar în acest caz, bidimensională, reprezentând similitudinea elipsei. Grafic Kam Torus generate rânduri suprapuse de puncte într-un anumit set orbita generat de ecuații în care este incrementat o variabilă la fiecare pas. Trei ecuații care guvernează desenul sunt după cum urmează:
x (0) = y (0) = orbita / 3
x (n + 1) = x (n) * cos (a) + (x 2 - y (n)) * sin (a)
y (n + 1) = x (n) * sin (a) + (x 2 - y (n)) * cos (a)
După fiecare trecere prin valoarea bucla orbitei devine o creștere fixă. Parametrii care definesc comportamentul funcției, includ un unghi a (în radiani), mărimea pasului pentru orbita variabilă, valoarea finală a variabilei și numărul de puncte de pe orbita, specificând numărul de buclă trece.
La fiecare program incepe (sau fiecare redesena conținutul fereastră) grafice procedură construite DrawKamTorus (), vor varia valorile inițiale pentru a genera numere aleatoare folosind ecuații.
Setul de Julia
Spre deosebire de fractal Kam Torus, pluralitatea fractal Julia (așa cum este discutat mai jos Mandelbrot Set) utilizează un generator de numere aleatorii. Acest set creează un fractal de cunoscute valorile inițiale. Julia set pot fi generate prin schimbarea descrierii în procesul de Mandelbrot. pentru a începe cu o valoare predeterminată C, un număr complex (sub forma a + (b * i)) pentru a descrie pluralitatea Julia. Valoarea inițială Z corespunde și unui număr complex. Adevărata parte a acestui număr corespunde coordonatele x și y coordona imaginar, înmulțit i (unitate imaginar). Pentru a desena un fractală trebuie să se aplice secvențial ecuația Z (n + 1) = Z (n) ^ 2 + C pentru fiecare valoare a lui Z serii (0, ..., n).
Pentru fiecare punct din planul complex, există multe Julia lui, adică, există un număr infinit de seturi diferite de Julia. Dar cel mai interesant vizual buva obținut din astfel de valori C, M pentru care imaginea-set (adică punctul înrudit al Mandelbrot) este cel mai dens.
Mandelbrot
Fractalii definite de Mandelbrot este cel mai cunoscut și „celebrul“. Acest set, precum și multe atrage Julia fractală în ecuația lui, folosind numere complexe și puncte de pornire predefinite.
În ciuda popularității și acceptarea generală, setul Mandelbrot este un grafic simplu: orizontal (x) și verticală (y) coordonatele reprezintă intervalul de variație a două variabile independente. În reprezentarea bidimensională pentru diferite niveluri de transmisie treia dependentă de primele două magnitudine, folosește culoarea.
La fel ca în multe Julia, axa x reprezintă încă o dată numere reale, iar axa y - imaginar. Deci, pornește fractale de la orice punct din planul complex - C, constante complexe. Apoi ia un alt număr complex, care poate fi schimbat - Z. Pentru a construi un fractal, ar trebui să înceapă cu Z = 0 și se calculează expresia fractal după cum urmează:
Z (n) = complot
Z (n + 1) = Z ^ 2 + C
În această expresie este iterarea o funcție Z (n + 1) = Z (n) ^ 2 + C. Pentru unele valori cu rezultatele după un timp „nivelat“. Pentru restul, crește pe termen nelimitat.
Mai jos este un fișier de cod sursă care conține funcții pentru tragerea directă a fractali în fereastra folosind GDI. Proiectul complet cu cod compilat exe-fișier se află în fișierul atașat.
Desen fractali, Kam Torus, setul de Julia, set Mandelbrot