à t’orienter dans des codes de programme plus complexes et à effectuer certaines adaptations. Les formules utilisées dans les exemples suivants ont été inventées par des mathématiciens célèbres.
EXEMPLES
Les fractales sont des images générées par ordinateur qui présentent une autosimilarité, c’est-à-dire que certaines parties de l’image sont des copies réduites de l’image entière.
Le terme fractal a été introduit en 1975 par le mathématicien Benoît Mandelbrot et provient du latin fractus (« brisé »), en référence à la dimension fractale.
Dans la géométrie traditionnelle :
une ligne est unidimensionnelle,
une surface est bidimensionnelle,
un espace est tridimensionnel.
Les images fractales possèdent souvent une dimension non entière.
Les fractales les plus intéressantes sont obtenues à partir de transformations non linéaires. Ces fractales sont généralement calculées de manière itérative et utilisent souvent des nombres complexes.
Tu trouveras ci-dessous le code complet de quelques fractales célèbres, sans commentaire supplémentaire. Même sans étudier le code en détail, tu peux admirer ces belles images et créer des fractales avec d’autres couleurs.
Example 1: Fougère
Programme:
# Farn.pyfrom gpanel import *
import random
def farn():
z = 0
n = 0
while n < nbPoints:
r = random.random()
c = "black"if r < 0.01:
c = "yellow"
z = f(z, 0, 0, 0, 0.16, 0, 0) # Stielelif r < 0.86:
c = "lime"
z = f(z, 0.85, 0.04, -0.04, 0.85, 0, 1.60) # symmetryelif r > 0.86 and r < 0.93:
c = "red"
z = f(z, 0.20, -0.26, 0.23, 0.22, 0, 1.60) # left leaveselif r > 0.93:
c = "blue"
z = f(z, -0.15, 0.28, 0.26, 0.24, 0, 1.44) # right leaves
setColor(c)
point(z)
n += 1
def f(z, a, b, c, d, e, f):
re = a * z.real + b * z.imag + e
im = c * z.real + d * z.imag + f
return complex(re, im)
makeGPanel(-3.5, 3.5, 0, 10)
bgColor("black")
nbPoints = 40000
farn()