AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

A*-Demo

Ein Thema von Luckie · begonnen am 24. Dez 2005 · letzter Beitrag vom 24. Dez 2005
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Luckie
Luckie
Registriert seit: 29. Mai 2002
Da es ja immer wieder gefragt wird und es wohl keine gescheiten Beispiel Quellcodes in Delphi gibt, habe ich mich mal hingesetzt und ein Delpi-Demo zum A* (A Star) Pathfinding Algorithmus geschrieben. Mein Dank geht dabei an Klaus Neumann, der mir sehr geholfen hat, in dem er meine Denkfehler freundlicherweise ausgebügelt hat, so wohl im eigentlichen Algorithmus, als auch im Algorithmus für das Labyrinth.

Im Archiv befinden sich noch zwei PDFs zur Theorie zum A*-Algorithmus und zur Theorie für den Labyrinth-Algorithmus.

Ergänzung: Im Archiv AStar_Demo jetzt eine reine Demo mit den Zwischenwerten zum Debuggen.
Miniaturansicht angehängter Grafiken
demo_209.png  
Angehängte Dateien
Dateityp: zip astar_990.zip (949,8 KB, 109x aufgerufen)
Dateityp: zip astar_demo_108.zip (943,0 KB, 71x aufgerufen)
Ein Teil meines Codes würde euch verunsichern.
 
Benutzerbild von jfheins
jfheins
 
#2
  Alt 24. Dez 2005, 13:20
Ist das ein Solver für ein Labyrinth, ja?

Nett, nur 2 Sachen:

- Nicht jeder hat eine 1200 x 1600 Auflöung oder so (vll. verleinerbar ?)

- er hat einn Problem wenn es keinen Weg gibt ....
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#3
  Alt 24. Dez 2005, 13:28
Ups, da war noch alter Code drinne. Jetzt sollte es gehen. Aktuelle version im ersten Posting.

Nun ja, ich habe es so groß gewählt, damit es nach was aussieht. Kannst du ja ändern. Es soll eben nur eine Demo sein.
Michael
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh
 
#4
  Alt 24. Dez 2005, 13:35
Die Fehlermeldung ist genial .
Aber soll irgendetwas auf der Canvas passieren ? Wenn ich auf Start klicke, steht unten sofort das Ergebnis, ich kann aber das Feld nicht mehr verändern und es sieht aus, als ob jede WM-PAINT-Messade ignoriert würde.
Sebastian
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#5
  Alt 24. Dez 2005, 13:37
Da war noch ein ShowMessage drinne und die ist nicht theadsafe.

Und was willst du verändern, wenn der Pfad gefunden wurde?
Michael
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh
 
#6
  Alt 24. Dez 2005, 13:47
Zitat von Luckie:
Da war noch ein ShowMessage drinne und die ist nicht theadsafe.
In der ersten oder zweiten Version? Ich habe mich auf die zweite bezogen.
Zitat:
Und was willst du verändern, wenn der Pfad gefunden wurde?
Auch wenn ich auf Stop oder Neu gehe, kann ich nichts mehr verändern. Und wie gesagt, sobald ein Fenster über dem Programm ist, bleibt der entsprechende Teil grau.
Ist es denn nun gewollt, dass der gefundene Pfad nicht grafisch angezeigt wird?
Sebastian
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#7
  Alt 24. Dez 2005, 13:54
Also in der jetzigen version sollte alles funktionieren, so wohl das Neuzeichnen, wenn das Fenster neu gezeichnet werden muss, als auch das Einzeichnen des gefundenen Pfades.
Michael
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh
 
#8
  Alt 24. Dez 2005, 13:58
Tja - bei mir nicht .
Vielleicht finde ich noch Zeit, das Programm hier zu kompilieren und nach Fehlern zu suchen, aber heute ist's etwas stressig .
Sebastian
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#9
  Alt 24. Dez 2005, 14:03
Hm. Mach mich nicht schwach. Im Anhang vom ersten Posting noch ein Screenshot, wie es aussehen sollte. Das gelbe sind die felder, die er durchgerechnet hat.
Michael
  Mit Zitat antworten Zitat
Amateurprofi

 
Delphi XE2 Professional
 
#10
  Alt 24. Dez 2005, 15:51
Hier ist ein ähnliches Programm wie das von Luckie vorgestellte,
Wie Luckie erwähnte hatten wir gemeinsam an dieser Demo gearbeitet.
Viel Spaß beim Fehler suchen.

Michael,
ich hab auch einen Algorithmus gefunden, ein echtes Labyrinth zu erstellen, also eines bei dem jeder Punkt des Labyrinthes von jedem anderen Pukt erreichbar ist.
Ist etwas kryptisch, weil in Assembler...
Beschribung des Algos : http://www.tusche-welt.de/Labyrinth.html
Angehängte Dateien
Dateityp: zip pathfinder_195.zip (282,7 KB, 27x aufgerufen)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz