The A* Path Finding Algorithm (CSS's Code Repository)
-
Josh Gray wrote:
what is it you think you *own*? Quote Selected Text
My text and pictures, my article.
Watch the Fall of the Republic (High Quality 2:24:19)[^] Sons Of Liberty - Free Album (They sound very much like Metallica, great lyrics too)[^]
-
I disagree with you, however I don't intend to be a technical writing, I intend to be a software engineer.
Watch the Fall of the Republic (High Quality 2:24:19)[^] Sons Of Liberty - Free Album (They sound very much like Metallica, great lyrics too)[^]
-
I disagree with you, however I don't intend to be a technical writing, I intend to be a software engineer.
Watch the Fall of the Republic (High Quality 2:24:19)[^] Sons Of Liberty - Free Album (They sound very much like Metallica, great lyrics too)[^]
-
I disagree with you, however I don't intend to be a technical writing, I intend to be a software engineer.
Watch the Fall of the Republic (High Quality 2:24:19)[^] Sons Of Liberty - Free Album (They sound very much like Metallica, great lyrics too)[^]
Well, it seems that you've written an article on a non complex subject, so at first glance, that seems reasonable. However, I'd attribute at least some of my success, and certainly the fact that I've done a lot better than workmates I counted as smarter than me, to my being willing to work hard, contribute to a team, and consider other people's needs rather than just complain about what I wanted. I don't see those qualities in you, at all.
Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.
-
-
CaptainSeeSharp wrote:
I finished it. Tell me what you think.
CaptainSeeSharp wrote:
1.) Add Point A to the Open List and make it the Current Node 2.) Scan for Nodes adjacent to the Current Node that qualify to be added to the Open List. 3.) Calculate their costs, set their Parents to the Current Node, and add them to the Open List. 4.) Pull the Node with the least Total Cost from the Open List and make it the Current Node. 35.) Repeat steps 2-34 until the Current Node is Point B (the end Node). 46.) Point A and Point B are now linked together by the Parent Nodes. Iterate through them from Point B to Point A.
FTFY Easy one first. Construct the wall to surround Point B. Does your algorithm still work?
Bob Emmett @ Ynys Thanatos
-
Christian Graus wrote:
Why not post it as a CP article ?
Because I own it.
Watch the Fall of the Republic (High Quality 2:24:19)[^] Sons Of Liberty - Free Album (They sound very much like Metallica, great lyrics too)[^]
-
CaptainSeeSharp wrote:
I finished it. Tell me what you think.
CaptainSeeSharp wrote:
1.) Add Point A to the Open List and make it the Current Node 2.) Scan for Nodes adjacent to the Current Node that qualify to be added to the Open List. 3.) Calculate their costs, set their Parents to the Current Node, and add them to the Open List. 4.) Pull the Node with the least Total Cost from the Open List and make it the Current Node. 35.) Repeat steps 2-34 until the Current Node is Point B (the end Node). 46.) Point A and Point B are now linked together by the Parent Nodes. Iterate through them from Point B to Point A.
FTFY Easy one first. Construct the wall to surround Point B. Does your algorithm still work?
Bob Emmett @ Ynys Thanatos
Bob Emmett wrote:
Easy one first. Construct the wall to surround Point B. Does your algorithm still work?
Yes, it throws the
PathNotFoundException
.Watch the Fall of the Republic (High Quality 2:24:19)[^] Sons Of Liberty - Free Album (They sound very much like Metallica, great lyrics too)[^]
-
Bob Emmett wrote:
Easy one first. Construct the wall to surround Point B. Does your algorithm still work?
Yes, it throws the
PathNotFoundException
.Watch the Fall of the Republic (High Quality 2:24:19)[^] Sons Of Liberty - Free Album (They sound very much like Metallica, great lyrics too)[^]
CaptainSeeSharp wrote:
Yes, it throws the PathNotFoundException.
But your algorithm makes no mention of the possibility that a path may not be found, or the condition that indicates that no path exists. Thus your algorithm is incomplete.
Bob Emmett CSS: I don't intend to be a technical writing, I intend to be a software engineer.
-
CaptainSeeSharp wrote:
Yes, it throws the PathNotFoundException.
But your algorithm makes no mention of the possibility that a path may not be found, or the condition that indicates that no path exists. Thus your algorithm is incomplete.
Bob Emmett CSS: I don't intend to be a technical writing, I intend to be a software engineer.
It is a tutorial for beginners. My intention is to construct a tutorial website, mainly focusing on algorithms and small games that utilize those algorithms. That article is to get your foot in the door with the A* Path Finding Algorithm. I boil it down as simple as I can possibly make it so it is easy to understand. That is more important than listing the infinite details and possibilities. Such things belong is a comprehensive specification. My implementation is a bit more sophisticated, it is part of the GameFX library. It integrates with the TileMap components, and most functions automatically react to events in the TileMap so it is extremely easy to use as a library.
Watch the Fall of the Republic (High Quality 2:24:19)[^] Sons Of Liberty - Free Album (They sound very much like Metallica, great lyrics too)[^]
-
It is a tutorial for beginners. My intention is to construct a tutorial website, mainly focusing on algorithms and small games that utilize those algorithms. That article is to get your foot in the door with the A* Path Finding Algorithm. I boil it down as simple as I can possibly make it so it is easy to understand. That is more important than listing the infinite details and possibilities. Such things belong is a comprehensive specification. My implementation is a bit more sophisticated, it is part of the GameFX library. It integrates with the TileMap components, and most functions automatically react to events in the TileMap so it is extremely easy to use as a library.
Watch the Fall of the Republic (High Quality 2:24:19)[^] Sons Of Liberty - Free Album (They sound very much like Metallica, great lyrics too)[^]
CaptainSeeSharp wrote:
It is a tutorial for beginners.
And, applied to a simple 2D world, A* is a non-complex algorithm and easy for a beginner to comprehend. To present a beginner with a non-functioning algorithm is unhelpful.
CaptainSeeSharp wrote:
That is more important than listing the infinite details and possibilities.
It is a pathfinding algorithm, it either finds a path or it doesn't, hardly infinite.
CaptainSeeSharp wrote:
My implementation is a bit more sophisticated
You mean that it includes the test to ensure that the path returned is actually the shortest?
Bob Emmett CSS: I don't intend to be a technical writing, I intend to be a software engineer.