|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object cz.cuni.amis.pathfinding.alg.astar.AStarResult<NODE>
public class AStarResult<NODE>
Represents result of the computation of AStar#AStar.findPath(cz.cuni.amis.pathfinding.map.IPFGoal, long)
.
It contains results from the search as well as method for finding the path from the startNode to the goalNode.
It contains all data structures the AStar is using during the work. Everything is made public here so that AStar (during work) and you (for browsing the results) may use it.
Field Summary | |
---|---|
Set<NODE> |
closeList
Nodes which were examined by the algorithm. |
HashMap<NODE,Integer> |
estimatedCost
Used and filled by A* algorithm (AStar.aStar()). |
NODE |
goalNode
Node which was marked as a goalNode by AStarMap. |
long |
interations
Contains the number of iterations made by A* search. |
cz.cuni.amis.utils.heap.Heap<NODE> |
openList
List of nodes which is opened -> was touched by the algorithm and are subjects of examination. |
HashMap<NODE,Integer> |
pathCost
Used and filled by A* algorithm (AStar.aStar()). |
HashMap<NODE,NODE> |
previousNode
Used by getPath() and filled by A* algorithm (AStar.aStar()). |
NODE |
startNode
Start node of the A*. |
boolean |
success
Whether goalNode was found during the A* run. |
Constructor Summary | |
---|---|
AStarResult()
|
Method Summary | |
---|---|
int |
getCostToNode(NODE node)
Returns cost of the path from startNode to node if the node was touched by A* algorithm (if A* was successful, then this always contains the goalNode and every node on the path at least). |
int |
getDistanceToGoal()
If the AStar succeeded then it returns the distance to the goal from the start node. |
int |
getEstimatedCostToNode(NODE node)
Returns estimated cost of the path from startNode to goal through node. |
List<NODE> |
getPath()
Returns the path from startNode to goalNode. |
NODE |
getPreviousNode(NODE node)
Previous node in the path to the goal node. |
boolean |
isSuccess()
Whether this result represents the success, i.e., path from start to goal node has been found. |
void |
putCostToNode(NODE node,
Integer cost)
Assing cost of the path from startNode to node. |
void |
putEstimatedCostToNode(NODE node,
Integer cost)
Assing estimated cost of the path from startNode to goalNode through node. |
void |
putPreviousNode(NODE node,
NODE previous)
Assing 'previous' as an previous node for 'node' (the path from 'startNode' to 'node' goes across 'previous'). |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public HashMap<NODE,NODE> previousNode
public cz.cuni.amis.utils.heap.Heap<NODE> openList
public Set<NODE> closeList
public HashMap<NODE,Integer> pathCost
public HashMap<NODE,Integer> estimatedCost
public long interations
public NODE startNode
public NODE goalNode
public boolean success
Constructor Detail |
---|
public AStarResult()
Method Detail |
---|
public NODE getPreviousNode(NODE node)
IAStarResult
getPreviousNode
in interface IAStarResult<NODE>
public void putPreviousNode(NODE node, NODE previous)
node
- previous
- public int getCostToNode(NODE node)
IAStarResult
If node wasn't touched by A* algorithm, then it returns -1.
getCostToNode
in interface IAStarResult<NODE>
public void putCostToNode(NODE node, Integer cost)
node
- cost
- public int getEstimatedCostToNode(NODE node)
IAStarResult
If node wasn't touched by A* algorithm, then it returns -1.
getEstimatedCostToNode
in interface IAStarResult<NODE>
public void putEstimatedCostToNode(NODE node, Integer cost)
node
- cost
- public List<NODE> getPath()
IAStarResult
First item is startNode and the last item is goalNode. If startNode == goalNode then it contains only one item. For each index ... path[index] has neighbor path[index+1].
If the path doesn't exist - returns null.
getPath
in interface IAStarResult<NODE>
public int getDistanceToGoal()
IAStarResult
Returns -1 otherwise.
getDistanceToGoal
in interface IAStarResult<NODE>
public boolean isSuccess()
IAStarResult
isSuccess
in interface IAStarResult<NODE>
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |