Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1914 connectés 

  FORUM HardWare.fr
  Programmation
  Algo

  Algorithmes de fractales

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Algorithmes de fractales

n°223418
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 03-10-2002 à 23:49:03  profilanswer
 

Bonjour,  
 
vala ben j'ai deja pu realiser un petit script en C qui genere une fractale et ce a l'aide d'un ami, mais j'aimerais avoir d'autres exemples d'algo de fractales, malheureusement sur google je ne trouve que des jolies images mais pas d'algos :(
si qqun a un bon site a me proposer la dessus,...
 
Accessoirement j'aimerais aussi un algo utilisant les ensembles de Mandelbrot, ca m'interresserait bcp de savoir comment qu'elle est generee celle la :D
 
merci.


---------------
J'ai une pierre à la place du coeur, et au milieu de cette pierre il y a un coeur.
mood
Publicité
Posté le 03-10-2002 à 23:49:03  profilanswer
 

n°223423
bjone
Insert booze to continue
Posté le 04-10-2002 à 00:28:11  profilanswer
 

j'avais fait un truc sur mandelbrot et julia attends...
 
un truc que j'avais trouvé sur citeweb, PrograZine, par Discase et loubail, enfin t'aurais pu les trouver n'importe où:
 
Mandelbrot:
 
Z(n+1) = Z(n)^2 + C
Z(0) = 0
 
C : point actuel (point en cours de rendu)
 
donc en fait, si tu traçes une image de 640x480, tu ramène le point en cours dans un domaine style -2,1.25 en X, -1.25,1.25 en Y. ( pixel en 0,0 => -2,-1.25, pixel en 639,479=> 1.25,1.25)
 
 
ça donne en pseudo-code:
 
---------------------
 
ITERATION est un ENTIER
Z est un COMPLEXE
C est un COMPLEXE
 
POUR chaque point C
 ITERATION = 0
 Z(0) = 0
 REPETER
    Z(n+1) = Z(n)^2 + C
  ITERATION = ITERATION +1
 JUSQU'A CE QUE Norme(Z(n+1)) > 2
 
 Couleur(C) = ITERATION
FIN POUR
 
--------------------
 
Julia:
 
Z(n+1) = Z(n)² + C
 
C = constante de qui influance la fractale
 
Z(0) doit être les coordonnées du point à calculer
 
idem domaine sympa:  -2, 2 en X  -1.5, 1.5 en Y....
 
tu itéres tant que |Z|² est inférieur à une valeur (500-1000...)
 
----
 
Je me souviens à l'époque j'avais fait un truc de ouf pour générer un BMP de 2048 par 2048 points....

n°223473
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 04-10-2002 à 12:17:48  profilanswer
 

Merci bien je v essayer de me debrouiller avec ca :)
 
a+


---------------
J'ai une pierre à la place du coeur, et au milieu de cette pierre il y a un coeur.
n°223482
BifaceMcLe​OD
The HighGlandeur
Posté le 04-10-2002 à 12:44:59  profilanswer
 

Pour les ensembles de Mandelbrot et de Julia, la définition est "un point ne fait pas partie de l'ensemble si et seulement si la suite associée à ce point diverge quand n augmente".
Or vu la tête des suites en question, dès que Z(n) est égal ou supérieur à 2, la suite diverge. Inutile de s'arrêter autour de 500 ou 1000, donc, 2 suffit (l'algo en pseudo-code de bjone est bon, donc).
 
Par contre, puisqu'on calcule les termes d'une suite définie par récurrence, la question se pose de savoir, pour chaque point, combien de termes de cette suite on va calculer. Car il n'est pas question de calculer jusqu'à l'infini pour vérifier qu'effectivement la suite ne diverge pas. Et là, en effet, on s'arrête généralement à n=500, n=1000 ou n=2000. Si la suite n'a toujours pas divergé au bout de 500, 1000 ou 2000 termes, alors on considère qu'elle converge quand n tend vers l'infini, et que le point correspondant fait bien partie de l'ensemble.


Message édité par BifaceMcLeOD le 04-10-2002 à 12:46:49
n°223567
bjone
Insert booze to continue
Posté le 04-10-2002 à 15:08:34  profilanswer
 

yep...
 
et l'intensité lumineuse (la couleur quoi), est liée au nombre d'itération....
 
donc en fait l'art c'est de bien paramétrer la palette....

n°223601
BifaceMcLe​OD
The HighGlandeur
Posté le 04-10-2002 à 16:50:00  profilanswer
 

Ca, c'est une de manière de faire. ;) L'ensemble est en noir (typiquement), et on colorie l'extérieur de l'ensemble en fonction de sa vitesse de "divergence".
 
On peut aussi colorier en noir l'extérieur de l'ensemble, et définir une couleur en fonction de la valeur du N-ième terme, par intervalles.
On peut aussi donner une fonction encore plus compliquée. Un truc rigolo, par exemple, c'est l'ensemble de Mandelbrot sous formes de bandes noires et blanches (genre, si N est pair après la boucle de calcul, on paint en blanc, sinon on peint en noir)...
 
Les variations sont infinies. Attention cependant de ne pas trop zoomer ailleurs qu'autour de zéro. Autour de 10^-15, on attint les limites de précision offerte par les réels dits "double-précision".

n°223636
bjone
Insert booze to continue
Posté le 04-10-2002 à 17:32:09  profilanswer
 

BifaceMcLeOD a écrit a écrit :

Ca, c'est une de manière de faire. ;) L'ensemble est en noir (typiquement), et on colorie l'extérieur de l'ensemble en fonction de sa vitesse de "divergence".
 
On peut aussi colorier en noir l'extérieur de l'ensemble, et définir une couleur en fonction de la valeur du N-ième terme, par intervalles.
On peut aussi donner une fonction encore plus compliquée. Un truc rigolo, par exemple, c'est l'ensemble de Mandelbrot sous formes de bandes noires et blanches (genre, si N est pair après la boucle de calcul, on paint en blanc, sinon on peint en noir)...
 
Les variations sont infinies. Attention cependant de ne pas trop zoomer ailleurs qu'autour de zéro. Autour de 10^-15, on attint les limites de précision offerte par les réels dits "double-précision".




 
grave, c'est dingue ce truc, on arrive a atteindre les limites de domaine et de précision des flottants (float ou double)..
 
ceci dit en optimisant le code de manière a maximiser l'utilisation des regsitres, on gagne en vitesse et en précision calculatoire....
 
pendant un moment je m'étais demandé, si à l'instar de Prime95, il était possible de tester la stablité numérique des FPUs via un algo de rendu fratacle et se mettant dans un domaine ou l'on tend vers de l'imprécision...
 
-------------
 
ça me fait penser qu'il faudrait que je recompile ce que j'ai fais pour le voir tourner sur mon xp à 1.7ghz....


Message édité par bjone le 04-10-2002 à 17:32:28
n°223637
HelloWorld
Salut tout le monde!
Posté le 04-10-2002 à 17:34:45  profilanswer
 

Si t'en as marre de mandelbrot et julia, ca va te changer un peu : (suit les liens y'a de quoi t'occuper un peu ;))
 
http://dake.calodox.org/tuts/quaternions.html


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Algo

  Algorithmes de fractales

 

Sujets relatifs
recherche un site sur les algorithmes de transcodage !!!Algorithmes de jeux d'arcade
réalisation de 3 algorithmesRecherche de docs sur les fractales pour projet fin étude
Chacun de ces 4 algorithmes contient une erreur. Laquelle ? SVP !!!!!j'ai un pb pour comprendre les algorithmes.. Des sites vite!!
algorithmes en Ccourbes fractales..
Plus de sujets relatifs à : Algorithmes de fractales


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR