ALGORITHME DE RECHERCHE DU PLUS COURT CHEMIN A*

MoveX Messages postés 230 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 16 juillet 2005 - 16 mai 2005 à 07:35
diglas Messages postés 63 Date d'inscription lundi 31 mars 2008 Statut Membre Dernière intervention 3 mai 2010 - 9 août 2010 à 01:34
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/31396-algorithme-de-recherche-du-plus-court-chemin-a

diglas Messages postés 63 Date d'inscription lundi 31 mars 2008 Statut Membre Dernière intervention 3 mai 2010
9 août 2010 à 01:34
Super le code!!
neodelphi Messages postés 442 Date d'inscription jeudi 4 avril 2002 Statut Membre Dernière intervention 11 août 2008
16 août 2005 à 13:21
Il serait bien que la personne ayant mis le 6/10 se manifeste pour expliquer les raisons de sa note... sa pourrait être utile pour corriger le source.
neodelphi Messages postés 442 Date d'inscription jeudi 4 avril 2002 Statut Membre Dernière intervention 11 août 2008
21 juil. 2005 à 22:56
Je viens de corriger un bug important dans mon code que j'ai détecté en observant l'évolution de la mémoire allouée par le programme lors de son exécution (l'algorithme n'à pas été modifié, juste un .free() manquant). J'ai également mis le panel parent au Image en doubleBuffered suite à tes conseils Japee (bien que sur ma machine je n'observe aucune différence).
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
15 juin 2005 à 13:49
Ca ne pose aucun problème, neodelphi.
Il suffit de paramétrer la propriété DoubleBuffered d'un TWinControl parent de la TImage, Panel1 par exemple (ou Form1, ou les deux...).
Le résultat est ici spectaculaire pendant la recherche du chemin par le petit "worm".
Évidemment, ça consomme un peu plus de mémoire...
Je n'ai pas encore eu le courage de me pencher sur l'algorithme, mais je le ferai, car son intérêt est évident.
Félicitations encore, et... bonne continuation ;-)
neodelphi Messages postés 442 Date d'inscription jeudi 4 avril 2002 Statut Membre Dernière intervention 11 août 2008
15 juin 2005 à 11:08
Merci pour vos commentaire ça fait plaisirs (si si je vous jure !).

Japee, pour le double-buffered est-tu sur que je puisse le mettre : je dessine dans un TImage.

Sinon j'espère que ce code aidera a la compréhension de l'algorithme, mais si vous avez des questions n'hésitez pas.

Encore merci :)
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
11 juin 2005 à 00:46
Ah, ça y est, j'y suis revenu voir...

Donc, pour être plus précis, un petit

Panel1.DoubleBuffered := True;

dans

procedure TForm1.FormCreate(Sender: TObject);

c'est pas grand chose, mais bon... ça le fait quand même, quoi. ;)

japee
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
11 juin 2005 à 00:37
Ah...
J'ai attendu de me calmer (environ 3 semaines, ça devrait aller) avant de mettre un commentaire.
Comment, 9/10 ?
Moi je mets 12/10, mais j'ai pas trouvé comment faire...
Je suis resté réellement scotché à mon écran pendant une bonne heure, à regarder le petit "ver" chercher son chemin, en lui compliquant la vie, pour voir comment il réagissait.
Chapeau, c'est un p... de bon code, et bien réalisé, et qui va finir par me réconcilier définitivement avec la mathématique.
Vraiment, merci neodelphi pour cette source extrêmement intéressante.
Heu, de mémoire, j'y suis pas revenu depuis, il me semble que tu aurais intérêt à placer un DoubleBuffered je sais plus trop où, mais ça améliore grandement la fluidité de l'affichage.
cs_Gimli Messages postés 21 Date d'inscription mardi 31 décembre 2002 Statut Membre Dernière intervention 5 janvier 2008
22 mai 2005 à 07:45
salut,
bravo, ce code est vraiment excellent et il marche très bien.
en plus la présentation est impeccable.
par contre il me manque 1 composant TXPmanifest.
sinon encore bravo.
@+
neodelphi Messages postés 442 Date d'inscription jeudi 4 avril 2002 Statut Membre Dernière intervention 11 août 2008
16 mai 2005 à 13:25
Merci pour ton commentaire... en plus de faire l'algorithme je me suis dit que le code pourrai donner des idées sur l'interface graphique et aussi montrer rapidement comment faire des listes chainnées...
MoveX Messages postés 230 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 16 juillet 2005 1
16 mai 2005 à 07:35
tres bon code !
j ai pas eu le temps de bien regarder mais je pense que ca peut etre interessant pour la manipulation du tpaint.. afficher des tableaux 'faits maison" par exemple...
Rejoignez-nous