mFringe = new BinaryHeap<Cell>();\r
mCells = new Cell[mGridWidth, mGridHeight];\r
\r
- Cell startCell = new Cell(start, 0, GetManhattanDistance(start, finish));\r
+ Cell startCell = new Cell(start, 0, heuristic(start, finish));\r
mFringe.Add(startCell);\r
mCells[start.X, start.Y] = startCell;\r
while (mFringe.Count > 0)\r
if (0 <= point.X && point.X < mGridWidth && 0 <= point.Y && point.Y < mGridHeight &&\r
mGrid[point.X, point.Y])\r
{\r
- int cost = cell.G + GetCost(cell.Point, point);\r
+ int cost = cell.G + costFunction(cell.Point, point);\r
\r
if (inQueue == null)\r
{\r
- Cell neighbor = new Cell(point, cost, GetManhattanDistance(point, finish), cell);\r
+ Cell neighbor = new Cell(point, cost, heuristic(point, finish), cell);\r
mFringe.Add(neighbor);\r
mCells[point.X, point.Y] = neighbor;\r
}\r
#region Private Methods\r
\r
// Builds up the binomial trees. More importantly, it sets the min\r
- // pointeer and ensures that no root binomial tree has the same degree.\r
+ // pointer and ensures that no root binomial tree has the same degree.\r
void Consolidate()\r
{\r
LinkedListNode<NodeInfo>[] degree = new LinkedListNode<NodeInfo>[64];\r