一、簡述以及地圖
- G 表示從起點移動到網格上指定方格的移動距離 (暫時不考慮沿斜向移動,只考慮上下左右移動)。
- H 表示從指定的方格移動到終點的預計移動距離,只計算直線距離,走直角篇走的是直角路線。
- 令 F = G + H ,F 即表示從起點經過此點預計到終點的總移動距離接下來我們從起點開始,按照以下尋路步驟,直至找到目標。
- 從起點開始, 把它作為待處理的方格存入一個預測可達的節點列表,簡稱 openList, 即把起點放入“預測可達節點列表”, 可達節點列表 openList 就是一個等待檢查方格的列表。
- 尋找 openList 中 F 值最小的點 min(一開始只有起點)周圍可以到達的方格(可到達的意思是其不是障礙物,也不存 在關閉列表中的方格,即不是已走過的方格)。計算 min 周圍可到達的方格的 F 值。將還沒在 openList 中點放入其中, 並 設定它們的"父方格"為點 min,表示他們的上一步是經過 min 到達的。如果 min 下一步某個可到達的方格已經在 openList 列表那麼並且經 min 點它的 F 值更優,則修改 F 值並把其"父方格"設為點 min。
- 把 2 中的點 min 從"開啟列表"中刪除並存入"關閉列表"closeList 中, closeList 中存放的都是不需要再次檢查的方格。如 果 2 中點 min 不是終點並且開啟列表的數量大於零,那麼繼續從第 2 步開始。如果是終點執行第 4 步,如果 openList 列 表數量為零,那麼就是找不到有效路徑。
- 如果第 3 步中 min 是終點,則結束查詢,直接追溯父節點到起點的路徑即為所選路徑
案例地圖說明:
起點:5.2
終點:5.0
障礙:中央紅色座標
二、示例程式碼:
程式碼中帶有 DEBUG 列印,開關在 Astar.h 的巨集定義中
main.cpp
1 #include "Astar.h" 2 #include <list> 3 #include <iostream> 4 #include <windows.h> 5 6 7 using namespace std; 8 9 //定義地圖陣列,二維陣列在記憶體順序儲存的 10 int map[13][13] = { 11 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 12 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 13 { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 }, 14 { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 }, 15 { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 }, 16 { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 }, 17 { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 }, 18 { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 }, 19 { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 }, 20 { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 }, 21 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 22 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 23 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } 24 }; 25 26 void AStarTest() 27 { 28 InitAstarMaze(&map[0][0], 13, 13); 29 30 //設定起始和結束點 31 Point* start = AllocPoint(5, 2); 32 Point* end = AllocPoint(5, 10); 33 34 //A*演算法找尋路徑 35 list<Point*> path = GetPath(start, end); 36 cout << "\n尋路結果:" << endl; 37 38 for(list<Point*>::const_iterator iter = path.begin(); iter != path.end(); iter++) 39 { 40 cout << '(' << (*iter)->x << ',' << (*iter)->y << ')' << endl; 41 Sleep(10); 42 } 43 44 ClearAstarMaze(); 45 } 46 47 int main(void) 48 { 49 AStarTest(); 50 system("pause"); 51 return 0; 52 }
Astar.h
1 #pragma once 2 3 #include <list> 4 5 #define DEBUG 1 //列印 DEBUG 6 7 const int kCost1 = 10; //直移一格消耗 8 const int kCost2 = 14; //斜移一格消耗 9 10 typedef struct _Point 11 { 12 int x, y; //點座標,這裡為了方便按照 C++的陣列來計算,x 代表橫排,y 代表豎列 13 int F, G, H; //F=G+H 14 struct _Point* parent; //parent 的座標 15 }Point; 16 17 /*分配一個節點(格子)*/ 18 Point* AllocPoint(int x, int y); 19 20 /*初始化地圖*/ 21 void InitAstarMaze(int* _maze, int _lines, int _colums); 22 23 /*通過 A* 演算法尋找路徑*/ 24 std::list<Point*> GetPath(Point* startPoint, Point* endPoint); 25 26 /*清理資源,結束後必須呼叫*/ 27 void ClearAstarMaze();
Astar.cpp
1 #include <math.h> 2 #include "Astar.h" 3 #include <iostream> 4 #include <vector> 5 6 static int* maze; //迷宮對應的二維陣列,使用一級指標表示 7 static int lines; //二維陣列對應的行數 8 static int cols; //二維陣列對應的列數 9 static std::list<Point*> openList; //開放列表 10 static std::list<Point*> closeList; //關閉列表 11 12 /*搜尋從起點到終點的最佳路徑*/ 13 static Point* findPath(Point* startPoint, Point* endPoint); 14 15 /*從開啟列表中返回 F 值最小的節點*/ 16 static Point* getLeastFpoint(); 17 18 /*獲取當前點周圍可達的節點*/ 19 static std::vector<Point*> getSurroundPoints(const Point* point); 20 21 /*判斷某點是否可以用於下一步判斷 */ 22 static bool isCanreach(const Point* point, const Point* targetNode); 23 24 /*判斷開放/關閉列表中是否包含某點*/ 25 static Point* isInList(const std::list<Point*>& list, const Point* point); 26 27 //計算 FGH 值 28 static int calcG(Point* temp_start, Point* point); 29 static int calcH(Point* point, Point* end); 30 static int calcF(Point* point); 31 32 /*分配一個節點(格子)*/ 33 Point* AllocPoint(int x, int y) 34 { 35 Point* temp = new Point; 36 memset(temp, 0, sizeof(Point)); //C語法 初始值清零 37 temp->x = x; 38 temp->y = y; 39 return temp; 40 } 41 42 /*初始化 A*搜尋的地圖*/ 43 void InitAstarMaze(int* _maze, int _lines, int _colums) 44 { 45 maze = _maze; 46 lines = _lines; 47 cols = _colums; 48 } 49 50 /*通過 A* 演算法尋找路徑*/ 51 std::list<Point*> GetPath(Point* startPoint, Point* endPoint) 52 { 53 Point* result = findPath(startPoint, endPoint); 54 std::list<Point*> path; 55 56 //返回路徑,如果沒找到路徑,返回空連結串列 57 while(result) 58 { 59 path.push_front(result); 60 result = result->parent; 61 } 62 return path; 63 } 64 65 /*搜尋從起點到終點的最佳路徑*/ 66 static Point* findPath(Point* startPoint, Point* endPoint) 67 { 68 openList.push_back(AllocPoint(startPoint->x, startPoint->y)); //置入起點,拷貝開闢一個節點,內外隔離 69 70 71 while(!openList.empty()) 72 { 73 //第一步,從開放列表中取最小 F 的節點 74 Point* minNodeF = getLeastFpoint(); //找到 F 值最小的點 75 76 if(DEBUG) 77 { 78 int i = 1; 79 for(std::list<Point*>::const_iterator iter = openList.begin(); iter != openList.end(); iter++) 80 { 81 std::cout << "開放連結串列第" << i++ << "個節點為: " << (*iter)->x << "," << (*iter)->y << " F值為:" << (*iter)->F; 82 if ((*iter)->parent != NULL) 83 { 84 std::cout << " --->父節點為:" << (*iter)->parent->x << "," << (*iter)->parent->y << std::endl; 85 } 86 else 87 { 88 std::cout << std::endl; 89 } 90 } 91 std::cout << "===================================" << std::endl; 92 std::cout << "從開放列表中取最小 F 的節點為:" << minNodeF->x << "." << minNodeF->y << std::endl; 93 std::cout << "=============================================" << std::endl; 94 } 95 96 //第二步,把當前節點放到關閉列表中 97 openList.remove(minNodeF); 98 if(DEBUG) 99 { 100 std::cout << "開放連結串列移除、關閉連結串列增加節點為: " << minNodeF->x << "," << minNodeF->y << " F值為:" << minNodeF->F << std::endl; 101 std::cout << "=======================================================" << std::endl; 102 } 103 closeList.push_back(minNodeF); 104 if(DEBUG) 105 { 106 int i = 1; 107 for(std::list<Point*>::const_iterator iter = closeList.begin(); iter != closeList.end(); iter++) 108 { 109 std::cout << "關閉連結串列第" << i++ << "個節點為: " << (*iter)->x << "," << (*iter)->y << " F值為:" << (*iter)->F; 110 if ((*iter)->parent != NULL) 111 { 112 std::cout << " --->父節點為:" << (*iter)->parent->x << "," << (*iter)->parent->y << std::endl; 113 } 114 else 115 { 116 std::cout << std::endl; 117 } 118 } 119 std::cout << "===========================================================\n\n" << std::endl; 120 } 121 122 //第三步,找到當前節點周圍可達的節點,並計算 F 值 123 std::vector<Point*> surroundPoints = getSurroundPoints(minNodeF); 124 for(std::vector<Point*>::const_iterator iter = surroundPoints.begin(); iter != surroundPoints.end(); iter++) 125 { 126 //周圍可到達點 127 Point* targetNode = *iter; 128 129 /*對某一個格子,如果它不在開放列表中,設定當前格為其父節點,計算 F G H, 並加入到開啟列表。否則重新計算G值*/ 130 Point* exist = isInList(openList, targetNode); 131 if(!exist) 132 { 133 targetNode->parent = minNodeF; 134 targetNode->G = calcG(minNodeF, targetNode); 135 targetNode->H = calcH(targetNode, endPoint); 136 targetNode->F = calcF(targetNode); 137 openList.push_back(targetNode); 138 } 139 else 140 { 141 if (DEBUG) 142 { 143 std::cout << ">>" << exist->x << "," << exist->y << " 在開放連結串列 跳過<<" << std::endl; 144 } 145 //int tempG = calcG(minNodeF, targetNode); 146 //if (tempG < targetNode->G) 147 //{ 148 // exist->parent = minNodeF; 149 // exist->G = tempG; 150 // exist->F = calcF(targetNode); 151 //} 152 //delete targetNode; 153 } 154 } 155 surroundPoints.clear(); 156 Point* resPoint = isInList(openList, endPoint); 157 if(resPoint) 158 { 159 if (DEBUG) 160 { 161 std::cout << "開放連結串列中找到了結束節點: " << resPoint->x << "," << resPoint->y; 162 if (resPoint->parent != NULL) 163 { 164 std::cout << " --->父節點為:" << resPoint->parent->x << "," << resPoint->parent->y << std::endl; 165 } 166 else 167 { 168 std::cout << std::endl; 169 } 170 } 171 return resPoint; 172 } 173 } 174 return NULL; 175 } 176 177 /*從開啟列表中返回 F 值最小的節點*/ 178 static Point* getLeastFpoint() 179 { 180 if(!openList.empty()) 181 { 182 Point* resPoint = openList.front(); 183 184 for(std::list<Point*>::const_iterator itor = openList.begin(); itor != openList.end(); itor++) 185 { 186 if((*itor)->F < resPoint->F) 187 { 188 resPoint = *itor; 189 } 190 } 191 return resPoint; 192 } 193 return NULL; 194 } 195 196 /*獲取當前點周圍可達的節點*/ 197 static std::vector<Point*> getSurroundPoints(const Point* point) 198 { 199 std::vector<Point*> surroundPoints; 200 for(int x = point->x - 1; x <= point->x + 1; x++) 201 { 202 for(int y = point->y - 1; y <= point->y + 1; y++) 203 { 204 Point* temp = AllocPoint(x, y); 205 if (DEBUG) 206 { 207 std::cout << " 判斷周圍座標點: " << temp->x << "," << temp->y << std::endl; 208 } 209 if(isCanreach(point, temp)) 210 { 211 surroundPoints.push_back(temp); 212 } 213 else 214 { 215 delete temp; 216 } 217 } 218 } 219 if (DEBUG) 220 { 221 std::cout << "minNodeF周圍點收集判斷完畢" << std::endl; 222 } 223 224 return surroundPoints; 225 } 226 227 /*判斷某點是否可以用於下一步判斷 */ 228 static bool isCanreach(const Point* point, const Point* targetNode) 229 { 230 if(targetNode->x<0 231 || targetNode->x>(lines - 1) 232 || targetNode->y<0 233 || targetNode->y>(cols - 1) 234 || maze[targetNode->x * cols + targetNode->y] == 1 //為 1 的障礙物判斷 235 || maze[targetNode->x * cols + targetNode->y] == 2 //為 2 的障礙物判斷 236 || (targetNode->x == point->x && targetNode->y == point->y) 237 || isInList(closeList, targetNode)) 238 { 239 if(DEBUG) 240 { 241 std::cout << ">>" << targetNode->x << "," << targetNode->y << "不可用於下步判斷" << "<<" << std::endl; 242 } 243 return false; 244 } 245 if(abs(point->x - targetNode->x) + abs(point->y - targetNode->y) == 1 || abs(point->x - targetNode->x) + abs(point->y - targetNode->y) == 2) //相鄰4個點判斷 246 { 247 return true; 248 } 249 else 250 { 251 return false; 252 } 253 } 254 255 //判斷某個節點是否在列表中,在則返回指標,不在則返回空 256 static Point* isInList(const std::list<Point*>& list, const Point* point) 257 { 258 //判斷某個節點是否在列表中,這裡不能比較指標,因為每次加入列表是新開闢的節點,只能比較座標 259 for(std::list<Point*>::const_iterator itor = list.begin(); itor != list.end(); itor++) 260 { 261 if((*itor)->x == point->x && (*itor)->y == point->y) 262 { 263 return *itor; 264 } 265 } 266 return NULL; 267 } 268 269 /*計算節點的 G 值 temp_start:minNodeF point:minNodeF周邊的可到達點 */ 270 static int calcG(Point* temp_start, Point* point) 271 { 272 int extraG = (abs(point->x - temp_start->x) + abs(point->y - temp_start->y)) == 1 ? kCost1 : kCost2; 273 //如果是初始節點,則其父節點是空 274 int parentG = (point->parent == NULL ? NULL : point->parent->G); 275 int num = parentG + extraG; 276 if(DEBUG) 277 { 278 std::cout << "----------------------------G值計算開始----------------------------" << std::endl; 279 std::cout << "檢測座標:" << point->x << "," << point->y << std::endl; 280 std::cout << "檢測座標->x:" << point->x << std::endl; 281 std::cout << "minNodeF->x:" << temp_start->x << std::endl; 282 std::cout << "檢測座標->x - minNodeF->x == " << abs(point->x - temp_start->x) << std::endl; 283 std::cout << "----------------------------------" << std::endl; 284 std::cout << "檢測座標->y:" << point->y << std::endl; 285 std::cout << "minNodeF->y:" << temp_start->y << std::endl; 286 std::cout << "檢測座標->y - minNodeF->y == " << abs(point->y - temp_start->y) << std::endl; 287 std::cout << "----------------------------------" << std::endl; 288 std::cout << "(abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == " << abs(point->x - temp_start->x) + abs(point->y - temp_start->y) << std::endl; 289 std::cout << "檢測座標:" << point->x << "." << point->y << " -->G值 == " << num << std::endl; 290 std::cout << "============================G值計算完畢============================\n" << std::endl; 291 } 292 return num; 293 } 294 295 static int calcH(Point* point, Point* end) 296 { 297 //定理:A^2 + B^2 == C^2 距離計算 H 298 double num = sqrt((double)(end->x - point->x) * (double)(end->x - point->x) + (double)(end->y - point->y) * (double)(end->y - point->y)) * kCost1; 299 300 if(DEBUG) 301 { 302 std::cout << "檢測座標:" << point->x << "." << point->y << std::endl; 303 std::cout << "終點->x:" << end->x << std::endl; 304 std::cout << "檢測座標->x:" << point->x << std::endl; 305 std::cout << "(double)(終點->x - 檢測座標->x) == " << (double)(end->x - point->x) << std::endl; 306 std::cout << "(double)(終點->x - 檢測座標->x)^2 == " << (double)(end->x - point->x) * (double)(end->x - point->x) << std::endl; 307 std::cout << "----------------------------------" << std::endl; 308 std::cout << "終點->y:" << end->y << std::endl; 309 std::cout << "檢測座標->y:" << point->y << std::endl; 310 std::cout << "(double)(終點->y - 檢測座標->y) == " << (double)(end->y - point->y) << std::endl; 311 std::cout << "(double)(終點->y - 檢測座標->y)^2 == " << (double)(end->y - point->y) * (double)(end->y - point->y) << std::endl; 312 std::cout << "----------------------------------" << std::endl; 313 std::cout << "(double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == " << (double)(end->x - point->x) * (double)(end->x - point->x) + (double)(end->y - point->y) * (double)(end->y - point->y) << std::endl; 314 std::cout << "----------------------------------" << std::endl; 315 std::cout << "sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == " << sqrt((double)(end->x - point->x) * (double)(end->x - point->x) + (double)(end->y - point->y) * (double)(end->y - point->y)) << std::endl; 316 std::cout << "----------------------------------" << std::endl; 317 std::cout << "sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==" << sqrt((double)(end->x - point->x) * (double)(end->x - point->x) + (double)(end->y - point->y) * (double)(end->y - point->y)) * kCost1 << std::endl; 318 std::cout << "檢測座標:" << point->x << "." << point->y << " H值 == " << num << std::endl; 319 std::cout << "============================H值計算完畢============================\n" << std::endl; 320 } 321 322 return num; 323 } 324 325 /*計算節點的 F 值*/ 326 static int calcF(Point* point) 327 { 328 int num = point->G + point->H; 329 330 if(DEBUG) 331 { 332 std::cout << "檢測座標:" << point->x << "." << point->y << " F值 == " << num << std::endl; 333 std::cout << "=============================================================================================\n\n" << std::endl; 334 } 335 return num; 336 } 337 338 /*清理資源,結束後必須呼叫*/ 339 void ClearAstarMaze() 340 { 341 maze = NULL; 342 lines = 0; 343 cols = 0; 344 std::list<Point*>::iterator itor; 345 346 //清除 openList 中的元素 347 for(itor = openList.begin(); itor != openList.end();) 348 { 349 delete* itor; 350 itor = openList.erase(itor);//獲取到下一個節點 351 } 352 353 //清理 closeList 中的元素 354 for(itor = closeList.begin(); itor != closeList.end();) 355 { 356 delete* itor; 357 itor = closeList.erase(itor); 358 } 359 }
三、Log列印,細看演算法步驟:
1 開放連結串列第1個節點為: 5,2 F值為:0 2 =================================== 3 從開放列表中取最小 F 的節點為:5.2 4 ================================================= 5 開放連結串列移除、關閉連結串列增加節點為: 5,2 F值為:0 6 ======================================================= 7 關閉連結串列第1個節點為: 5,2 F值為:0 8 =========================================================== 9 10 11 判斷周圍座標點: 4,1 12 判斷周圍座標點: 4,2 13 判斷周圍座標點: 4,3 14 判斷周圍座標點: 5,1 15 判斷周圍座標點: 5,2 16 >>5,2不可用於下步判斷<< 17 判斷周圍座標點: 5,3 18 判斷周圍座標點: 6,1 19 判斷周圍座標點: 6,2 20 判斷周圍座標點: 6,3 21 minNodeF周圍點收集判斷完畢 22 ----------------------------G值計算開始---------------------------- 23 檢測座標:4,1 24 檢測座標->x:4 25 minNodeF->x:5 26 檢測座標->x - minNodeF->x == 1 27 ---------------------------------- 28 檢測座標->y:1 29 minNodeF->y:2 30 檢測座標->y - minNodeF->y == 1 31 ---------------------------------- 32 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 33 檢測座標:4.1 -->G值 == 14 34 ============================G值計算完畢============================ 35 36 檢測座標:4.1 37 終點->x:5 38 檢測座標->x:4 39 (double)(終點->x - 檢測座標->x) == 1 40 (double)(終點->x - 檢測座標->x)^2 == 1 41 ---------------------------------- 42 終點->y:10 43 檢測座標->y:1 44 (double)(終點->y - 檢測座標->y) == 9 45 (double)(終點->y - 檢測座標->y)^2 == 81 46 ---------------------------------- 47 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 82 48 ---------------------------------- 49 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 9.05539 50 ---------------------------------- 51 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==90.5539 52 檢測座標:4.1 H值 == 90.5539 53 ============================H值計算完畢============================ 54 55 檢測座標:4.1 F值 == 104 56 ============================================================================================= 57 58 59 ----------------------------G值計算開始---------------------------- 60 檢測座標:4,2 61 檢測座標->x:4 62 minNodeF->x:5 63 檢測座標->x - minNodeF->x == 1 64 ---------------------------------- 65 檢測座標->y:2 66 minNodeF->y:2 67 檢測座標->y - minNodeF->y == 0 68 ---------------------------------- 69 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 70 檢測座標:4.2 -->G值 == 10 71 ============================G值計算完畢============================ 72 73 檢測座標:4.2 74 終點->x:5 75 檢測座標->x:4 76 (double)(終點->x - 檢測座標->x) == 1 77 (double)(終點->x - 檢測座標->x)^2 == 1 78 ---------------------------------- 79 終點->y:10 80 檢測座標->y:2 81 (double)(終點->y - 檢測座標->y) == 8 82 (double)(終點->y - 檢測座標->y)^2 == 64 83 ---------------------------------- 84 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 65 85 ---------------------------------- 86 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 8.06226 87 ---------------------------------- 88 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==80.6226 89 檢測座標:4.2 H值 == 80.6226 90 ============================H值計算完畢============================ 91 92 檢測座標:4.2 F值 == 90 93 ============================================================================================= 94 95 96 ----------------------------G值計算開始---------------------------- 97 檢測座標:4,3 98 檢測座標->x:4 99 minNodeF->x:5 100 檢測座標->x - minNodeF->x == 1 101 ---------------------------------- 102 檢測座標->y:3 103 minNodeF->y:2 104 檢測座標->y - minNodeF->y == 1 105 ---------------------------------- 106 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 107 檢測座標:4.3 -->G值 == 14 108 ============================G值計算完畢============================ 109 110 檢測座標:4.3 111 終點->x:5 112 檢測座標->x:4 113 (double)(終點->x - 檢測座標->x) == 1 114 (double)(終點->x - 檢測座標->x)^2 == 1 115 ---------------------------------- 116 終點->y:10 117 檢測座標->y:3 118 (double)(終點->y - 檢測座標->y) == 7 119 (double)(終點->y - 檢測座標->y)^2 == 49 120 ---------------------------------- 121 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 50 122 ---------------------------------- 123 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 7.07107 124 ---------------------------------- 125 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==70.7107 126 檢測座標:4.3 H值 == 70.7107 127 ============================H值計算完畢============================ 128 129 檢測座標:4.3 F值 == 84 130 ============================================================================================= 131 132 133 ----------------------------G值計算開始---------------------------- 134 檢測座標:5,1 135 檢測座標->x:5 136 minNodeF->x:5 137 檢測座標->x - minNodeF->x == 0 138 ---------------------------------- 139 檢測座標->y:1 140 minNodeF->y:2 141 檢測座標->y - minNodeF->y == 1 142 ---------------------------------- 143 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 144 檢測座標:5.1 -->G值 == 10 145 ============================G值計算完畢============================ 146 147 檢測座標:5.1 148 終點->x:5 149 檢測座標->x:5 150 (double)(終點->x - 檢測座標->x) == 0 151 (double)(終點->x - 檢測座標->x)^2 == 0 152 ---------------------------------- 153 終點->y:10 154 檢測座標->y:1 155 (double)(終點->y - 檢測座標->y) == 9 156 (double)(終點->y - 檢測座標->y)^2 == 81 157 ---------------------------------- 158 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 81 159 ---------------------------------- 160 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 9 161 ---------------------------------- 162 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==90 163 檢測座標:5.1 H值 == 90 164 ============================H值計算完畢============================ 165 166 檢測座標:5.1 F值 == 100 167 ============================================================================================= 168 169 170 ----------------------------G值計算開始---------------------------- 171 檢測座標:5,3 172 檢測座標->x:5 173 minNodeF->x:5 174 檢測座標->x - minNodeF->x == 0 175 ---------------------------------- 176 檢測座標->y:3 177 minNodeF->y:2 178 檢測座標->y - minNodeF->y == 1 179 ---------------------------------- 180 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 181 檢測座標:5.3 -->G值 == 10 182 ============================G值計算完畢============================ 183 184 檢測座標:5.3 185 終點->x:5 186 檢測座標->x:5 187 (double)(終點->x - 檢測座標->x) == 0 188 (double)(終點->x - 檢測座標->x)^2 == 0 189 ---------------------------------- 190 終點->y:10 191 檢測座標->y:3 192 (double)(終點->y - 檢測座標->y) == 7 193 (double)(終點->y - 檢測座標->y)^2 == 49 194 ---------------------------------- 195 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 49 196 ---------------------------------- 197 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 7 198 ---------------------------------- 199 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==70 200 檢測座標:5.3 H值 == 70 201 ============================H值計算完畢============================ 202 203 檢測座標:5.3 F值 == 80 204 ============================================================================================= 205 206 207 ----------------------------G值計算開始---------------------------- 208 檢測座標:6,1 209 檢測座標->x:6 210 minNodeF->x:5 211 檢測座標->x - minNodeF->x == 1 212 ---------------------------------- 213 檢測座標->y:1 214 minNodeF->y:2 215 檢測座標->y - minNodeF->y == 1 216 ---------------------------------- 217 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 218 檢測座標:6.1 -->G值 == 14 219 ============================G值計算完畢============================ 220 221 檢測座標:6.1 222 終點->x:5 223 檢測座標->x:6 224 (double)(終點->x - 檢測座標->x) == -1 225 (double)(終點->x - 檢測座標->x)^2 == 1 226 ---------------------------------- 227 終點->y:10 228 檢測座標->y:1 229 (double)(終點->y - 檢測座標->y) == 9 230 (double)(終點->y - 檢測座標->y)^2 == 81 231 ---------------------------------- 232 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 82 233 ---------------------------------- 234 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 9.05539 235 ---------------------------------- 236 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==90.5539 237 檢測座標:6.1 H值 == 90.5539 238 ============================H值計算完畢============================ 239 240 檢測座標:6.1 F值 == 104 241 ============================================================================================= 242 243 244 ----------------------------G值計算開始---------------------------- 245 檢測座標:6,2 246 檢測座標->x:6 247 minNodeF->x:5 248 檢測座標->x - minNodeF->x == 1 249 ---------------------------------- 250 檢測座標->y:2 251 minNodeF->y:2 252 檢測座標->y - minNodeF->y == 0 253 ---------------------------------- 254 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 255 檢測座標:6.2 -->G值 == 10 256 ============================G值計算完畢============================ 257 258 檢測座標:6.2 259 終點->x:5 260 檢測座標->x:6 261 (double)(終點->x - 檢測座標->x) == -1 262 (double)(終點->x - 檢測座標->x)^2 == 1 263 ---------------------------------- 264 終點->y:10 265 檢測座標->y:2 266 (double)(終點->y - 檢測座標->y) == 8 267 (double)(終點->y - 檢測座標->y)^2 == 64 268 ---------------------------------- 269 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 65 270 ---------------------------------- 271 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 8.06226 272 ---------------------------------- 273 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==80.6226 274 檢測座標:6.2 H值 == 80.6226 275 ============================H值計算完畢============================ 276 277 檢測座標:6.2 F值 == 90 278 ============================================================================================= 279 280 281 ----------------------------G值計算開始---------------------------- 282 檢測座標:6,3 283 檢測座標->x:6 284 minNodeF->x:5 285 檢測座標->x - minNodeF->x == 1 286 ---------------------------------- 287 檢測座標->y:3 288 minNodeF->y:2 289 檢測座標->y - minNodeF->y == 1 290 ---------------------------------- 291 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 292 檢測座標:6.3 -->G值 == 14 293 ============================G值計算完畢============================ 294 295 檢測座標:6.3 296 終點->x:5 297 檢測座標->x:6 298 (double)(終點->x - 檢測座標->x) == -1 299 (double)(終點->x - 檢測座標->x)^2 == 1 300 ---------------------------------- 301 終點->y:10 302 檢測座標->y:3 303 (double)(終點->y - 檢測座標->y) == 7 304 (double)(終點->y - 檢測座標->y)^2 == 49 305 ---------------------------------- 306 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 50 307 ---------------------------------- 308 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 7.07107 309 ---------------------------------- 310 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==70.7107 311 檢測座標:6.3 H值 == 70.7107 312 ============================H值計算完畢============================ 313 314 檢測座標:6.3 F值 == 84 315 ============================================================================================= 316 317 318 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 319 開放連結串列第2個節點為: 4,2 F值為:90 --->父節點為:5,2 320 開放連結串列第3個節點為: 4,3 F值為:84 --->父節點為:5,2 321 開放連結串列第4個節點為: 5,1 F值為:100 --->父節點為:5,2 322 開放連結串列第5個節點為: 5,3 F值為:80 --->父節點為:5,2 323 開放連結串列第6個節點為: 6,1 F值為:104 --->父節點為:5,2 324 開放連結串列第7個節點為: 6,2 F值為:90 --->父節點為:5,2 325 開放連結串列第8個節點為: 6,3 F值為:84 --->父節點為:5,2 326 =================================== 327 從開放列表中取最小 F 的節點為:5.3 328 ================================================= 329 開放連結串列移除、關閉連結串列增加節點為: 5,3 F值為:80 330 ======================================================= 331 關閉連結串列第1個節點為: 5,2 F值為:0 332 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 333 =========================================================== 334 335 336 判斷周圍座標點: 4,2 337 判斷周圍座標點: 4,3 338 判斷周圍座標點: 4,4 339 判斷周圍座標點: 5,2 340 >>5,2不可用於下步判斷<< 341 判斷周圍座標點: 5,3 342 >>5,3不可用於下步判斷<< 343 判斷周圍座標點: 5,4 344 判斷周圍座標點: 6,2 345 判斷周圍座標點: 6,3 346 判斷周圍座標點: 6,4 347 minNodeF周圍點收集判斷完畢 348 >>4,2 在開放連結串列 跳過<< 349 >>4,3 在開放連結串列 跳過<< 350 ----------------------------G值計算開始---------------------------- 351 檢測座標:4,4 352 檢測座標->x:4 353 minNodeF->x:5 354 檢測座標->x - minNodeF->x == 1 355 ---------------------------------- 356 檢測座標->y:4 357 minNodeF->y:3 358 檢測座標->y - minNodeF->y == 1 359 ---------------------------------- 360 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 361 檢測座標:4.4 -->G值 == 24 362 ============================G值計算完畢============================ 363 364 檢測座標:4.4 365 終點->x:5 366 檢測座標->x:4 367 (double)(終點->x - 檢測座標->x) == 1 368 (double)(終點->x - 檢測座標->x)^2 == 1 369 ---------------------------------- 370 終點->y:10 371 檢測座標->y:4 372 (double)(終點->y - 檢測座標->y) == 6 373 (double)(終點->y - 檢測座標->y)^2 == 36 374 ---------------------------------- 375 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 37 376 ---------------------------------- 377 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 6.08276 378 ---------------------------------- 379 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==60.8276 380 檢測座標:4.4 H值 == 60.8276 381 ============================H值計算完畢============================ 382 383 檢測座標:4.4 F值 == 84 384 ============================================================================================= 385 386 387 ----------------------------G值計算開始---------------------------- 388 檢測座標:5,4 389 檢測座標->x:5 390 minNodeF->x:5 391 檢測座標->x - minNodeF->x == 0 392 ---------------------------------- 393 檢測座標->y:4 394 minNodeF->y:3 395 檢測座標->y - minNodeF->y == 1 396 ---------------------------------- 397 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 398 檢測座標:5.4 -->G值 == 20 399 ============================G值計算完畢============================ 400 401 檢測座標:5.4 402 終點->x:5 403 檢測座標->x:5 404 (double)(終點->x - 檢測座標->x) == 0 405 (double)(終點->x - 檢測座標->x)^2 == 0 406 ---------------------------------- 407 終點->y:10 408 檢測座標->y:4 409 (double)(終點->y - 檢測座標->y) == 6 410 (double)(終點->y - 檢測座標->y)^2 == 36 411 ---------------------------------- 412 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 36 413 ---------------------------------- 414 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 6 415 ---------------------------------- 416 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==60 417 檢測座標:5.4 H值 == 60 418 ============================H值計算完畢============================ 419 420 檢測座標:5.4 F值 == 80 421 ============================================================================================= 422 423 424 >>6,2 在開放連結串列 跳過<< 425 >>6,3 在開放連結串列 跳過<< 426 ----------------------------G值計算開始---------------------------- 427 檢測座標:6,4 428 檢測座標->x:6 429 minNodeF->x:5 430 檢測座標->x - minNodeF->x == 1 431 ---------------------------------- 432 檢測座標->y:4 433 minNodeF->y:3 434 檢測座標->y - minNodeF->y == 1 435 ---------------------------------- 436 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 437 檢測座標:6.4 -->G值 == 24 438 ============================G值計算完畢============================ 439 440 檢測座標:6.4 441 終點->x:5 442 檢測座標->x:6 443 (double)(終點->x - 檢測座標->x) == -1 444 (double)(終點->x - 檢測座標->x)^2 == 1 445 ---------------------------------- 446 終點->y:10 447 檢測座標->y:4 448 (double)(終點->y - 檢測座標->y) == 6 449 (double)(終點->y - 檢測座標->y)^2 == 36 450 ---------------------------------- 451 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 37 452 ---------------------------------- 453 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 6.08276 454 ---------------------------------- 455 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==60.8276 456 檢測座標:6.4 H值 == 60.8276 457 ============================H值計算完畢============================ 458 459 檢測座標:6.4 F值 == 84 460 ============================================================================================= 461 462 463 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 464 開放連結串列第2個節點為: 4,2 F值為:90 --->父節點為:5,2 465 開放連結串列第3個節點為: 4,3 F值為:84 --->父節點為:5,2 466 開放連結串列第4個節點為: 5,1 F值為:100 --->父節點為:5,2 467 開放連結串列第5個節點為: 6,1 F值為:104 --->父節點為:5,2 468 開放連結串列第6個節點為: 6,2 F值為:90 --->父節點為:5,2 469 開放連結串列第7個節點為: 6,3 F值為:84 --->父節點為:5,2 470 開放連結串列第8個節點為: 4,4 F值為:84 --->父節點為:5,3 471 開放連結串列第9個節點為: 5,4 F值為:80 --->父節點為:5,3 472 開放連結串列第10個節點為: 6,4 F值為:84 --->父節點為:5,3 473 =================================== 474 從開放列表中取最小 F 的節點為:5.4 475 ================================================= 476 開放連結串列移除、關閉連結串列增加節點為: 5,4 F值為:80 477 ======================================================= 478 關閉連結串列第1個節點為: 5,2 F值為:0 479 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 480 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 481 =========================================================== 482 483 484 判斷周圍座標點: 4,3 485 判斷周圍座標點: 4,4 486 判斷周圍座標點: 4,5 487 判斷周圍座標點: 5,3 488 >>5,3不可用於下步判斷<< 489 判斷周圍座標點: 5,4 490 >>5,4不可用於下步判斷<< 491 判斷周圍座標點: 5,5 492 判斷周圍座標點: 6,3 493 判斷周圍座標點: 6,4 494 判斷周圍座標點: 6,5 495 minNodeF周圍點收集判斷完畢 496 >>4,3 在開放連結串列 跳過<< 497 >>4,4 在開放連結串列 跳過<< 498 ----------------------------G值計算開始---------------------------- 499 檢測座標:4,5 500 檢測座標->x:4 501 minNodeF->x:5 502 檢測座標->x - minNodeF->x == 1 503 ---------------------------------- 504 檢測座標->y:5 505 minNodeF->y:4 506 檢測座標->y - minNodeF->y == 1 507 ---------------------------------- 508 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 509 檢測座標:4.5 -->G值 == 34 510 ============================G值計算完畢============================ 511 512 檢測座標:4.5 513 終點->x:5 514 檢測座標->x:4 515 (double)(終點->x - 檢測座標->x) == 1 516 (double)(終點->x - 檢測座標->x)^2 == 1 517 ---------------------------------- 518 終點->y:10 519 檢測座標->y:5 520 (double)(終點->y - 檢測座標->y) == 5 521 (double)(終點->y - 檢測座標->y)^2 == 25 522 ---------------------------------- 523 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 26 524 ---------------------------------- 525 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 5.09902 526 ---------------------------------- 527 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==50.9902 528 檢測座標:4.5 H值 == 50.9902 529 ============================H值計算完畢============================ 530 531 檢測座標:4.5 F值 == 84 532 ============================================================================================= 533 534 535 ----------------------------G值計算開始---------------------------- 536 檢測座標:5,5 537 檢測座標->x:5 538 minNodeF->x:5 539 檢測座標->x - minNodeF->x == 0 540 ---------------------------------- 541 檢測座標->y:5 542 minNodeF->y:4 543 檢測座標->y - minNodeF->y == 1 544 ---------------------------------- 545 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 546 檢測座標:5.5 -->G值 == 30 547 ============================G值計算完畢============================ 548 549 檢測座標:5.5 550 終點->x:5 551 檢測座標->x:5 552 (double)(終點->x - 檢測座標->x) == 0 553 (double)(終點->x - 檢測座標->x)^2 == 0 554 ---------------------------------- 555 終點->y:10 556 檢測座標->y:5 557 (double)(終點->y - 檢測座標->y) == 5 558 (double)(終點->y - 檢測座標->y)^2 == 25 559 ---------------------------------- 560 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 25 561 ---------------------------------- 562 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 5 563 ---------------------------------- 564 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==50 565 檢測座標:5.5 H值 == 50 566 ============================H值計算完畢============================ 567 568 檢測座標:5.5 F值 == 80 569 ============================================================================================= 570 571 572 >>6,3 在開放連結串列 跳過<< 573 >>6,4 在開放連結串列 跳過<< 574 ----------------------------G值計算開始---------------------------- 575 檢測座標:6,5 576 檢測座標->x:6 577 minNodeF->x:5 578 檢測座標->x - minNodeF->x == 1 579 ---------------------------------- 580 檢測座標->y:5 581 minNodeF->y:4 582 檢測座標->y - minNodeF->y == 1 583 ---------------------------------- 584 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 585 檢測座標:6.5 -->G值 == 34 586 ============================G值計算完畢============================ 587 588 檢測座標:6.5 589 終點->x:5 590 檢測座標->x:6 591 (double)(終點->x - 檢測座標->x) == -1 592 (double)(終點->x - 檢測座標->x)^2 == 1 593 ---------------------------------- 594 終點->y:10 595 檢測座標->y:5 596 (double)(終點->y - 檢測座標->y) == 5 597 (double)(終點->y - 檢測座標->y)^2 == 25 598 ---------------------------------- 599 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 26 600 ---------------------------------- 601 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 5.09902 602 ---------------------------------- 603 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==50.9902 604 檢測座標:6.5 H值 == 50.9902 605 ============================H值計算完畢============================ 606 607 檢測座標:6.5 F值 == 84 608 ============================================================================================= 609 610 611 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 612 開放連結串列第2個節點為: 4,2 F值為:90 --->父節點為:5,2 613 開放連結串列第3個節點為: 4,3 F值為:84 --->父節點為:5,2 614 開放連結串列第4個節點為: 5,1 F值為:100 --->父節點為:5,2 615 開放連結串列第5個節點為: 6,1 F值為:104 --->父節點為:5,2 616 開放連結串列第6個節點為: 6,2 F值為:90 --->父節點為:5,2 617 開放連結串列第7個節點為: 6,3 F值為:84 --->父節點為:5,2 618 開放連結串列第8個節點為: 4,4 F值為:84 --->父節點為:5,3 619 開放連結串列第9個節點為: 6,4 F值為:84 --->父節點為:5,3 620 開放連結串列第10個節點為: 4,5 F值為:84 --->父節點為:5,4 621 開放連結串列第11個節點為: 5,5 F值為:80 --->父節點為:5,4 622 開放連結串列第12個節點為: 6,5 F值為:84 --->父節點為:5,4 623 =================================== 624 從開放列表中取最小 F 的節點為:5.5 625 ================================================= 626 開放連結串列移除、關閉連結串列增加節點為: 5,5 F值為:80 627 ======================================================= 628 關閉連結串列第1個節點為: 5,2 F值為:0 629 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 630 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 631 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 632 =========================================================== 633 634 635 判斷周圍座標點: 4,4 636 判斷周圍座標點: 4,5 637 判斷周圍座標點: 4,6 638 >>4,6不可用於下步判斷<< 639 判斷周圍座標點: 5,4 640 >>5,4不可用於下步判斷<< 641 判斷周圍座標點: 5,5 642 >>5,5不可用於下步判斷<< 643 判斷周圍座標點: 5,6 644 >>5,6不可用於下步判斷<< 645 判斷周圍座標點: 6,4 646 判斷周圍座標點: 6,5 647 判斷周圍座標點: 6,6 648 >>6,6不可用於下步判斷<< 649 minNodeF周圍點收集判斷完畢 650 >>4,4 在開放連結串列 跳過<< 651 >>4,5 在開放連結串列 跳過<< 652 >>6,4 在開放連結串列 跳過<< 653 >>6,5 在開放連結串列 跳過<< 654 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 655 開放連結串列第2個節點為: 4,2 F值為:90 --->父節點為:5,2 656 開放連結串列第3個節點為: 4,3 F值為:84 --->父節點為:5,2 657 開放連結串列第4個節點為: 5,1 F值為:100 --->父節點為:5,2 658 開放連結串列第5個節點為: 6,1 F值為:104 --->父節點為:5,2 659 開放連結串列第6個節點為: 6,2 F值為:90 --->父節點為:5,2 660 開放連結串列第7個節點為: 6,3 F值為:84 --->父節點為:5,2 661 開放連結串列第8個節點為: 4,4 F值為:84 --->父節點為:5,3 662 開放連結串列第9個節點為: 6,4 F值為:84 --->父節點為:5,3 663 開放連結串列第10個節點為: 4,5 F值為:84 --->父節點為:5,4 664 開放連結串列第11個節點為: 6,5 F值為:84 --->父節點為:5,4 665 =================================== 666 從開放列表中取最小 F 的節點為:4.3 667 ================================================= 668 開放連結串列移除、關閉連結串列增加節點為: 4,3 F值為:84 669 ======================================================= 670 關閉連結串列第1個節點為: 5,2 F值為:0 671 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 672 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 673 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 674 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 675 =========================================================== 676 677 678 判斷周圍座標點: 3,2 679 判斷周圍座標點: 3,3 680 判斷周圍座標點: 3,4 681 判斷周圍座標點: 4,2 682 判斷周圍座標點: 4,3 683 >>4,3不可用於下步判斷<< 684 判斷周圍座標點: 4,4 685 判斷周圍座標點: 5,2 686 >>5,2不可用於下步判斷<< 687 判斷周圍座標點: 5,3 688 >>5,3不可用於下步判斷<< 689 判斷周圍座標點: 5,4 690 >>5,4不可用於下步判斷<< 691 minNodeF周圍點收集判斷完畢 692 ----------------------------G值計算開始---------------------------- 693 檢測座標:3,2 694 檢測座標->x:3 695 minNodeF->x:4 696 檢測座標->x - minNodeF->x == 1 697 ---------------------------------- 698 檢測座標->y:2 699 minNodeF->y:3 700 檢測座標->y - minNodeF->y == 1 701 ---------------------------------- 702 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 703 檢測座標:3.2 -->G值 == 28 704 ============================G值計算完畢============================ 705 706 檢測座標:3.2 707 終點->x:5 708 檢測座標->x:3 709 (double)(終點->x - 檢測座標->x) == 2 710 (double)(終點->x - 檢測座標->x)^2 == 4 711 ---------------------------------- 712 終點->y:10 713 檢測座標->y:2 714 (double)(終點->y - 檢測座標->y) == 8 715 (double)(終點->y - 檢測座標->y)^2 == 64 716 ---------------------------------- 717 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 68 718 ---------------------------------- 719 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 8.24621 720 ---------------------------------- 721 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==82.4621 722 檢測座標:3.2 H值 == 82.4621 723 ============================H值計算完畢============================ 724 725 檢測座標:3.2 F值 == 110 726 ============================================================================================= 727 728 729 ----------------------------G值計算開始---------------------------- 730 檢測座標:3,3 731 檢測座標->x:3 732 minNodeF->x:4 733 檢測座標->x - minNodeF->x == 1 734 ---------------------------------- 735 檢測座標->y:3 736 minNodeF->y:3 737 檢測座標->y - minNodeF->y == 0 738 ---------------------------------- 739 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 740 檢測座標:3.3 -->G值 == 24 741 ============================G值計算完畢============================ 742 743 檢測座標:3.3 744 終點->x:5 745 檢測座標->x:3 746 (double)(終點->x - 檢測座標->x) == 2 747 (double)(終點->x - 檢測座標->x)^2 == 4 748 ---------------------------------- 749 終點->y:10 750 檢測座標->y:3 751 (double)(終點->y - 檢測座標->y) == 7 752 (double)(終點->y - 檢測座標->y)^2 == 49 753 ---------------------------------- 754 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 53 755 ---------------------------------- 756 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 7.28011 757 ---------------------------------- 758 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==72.8011 759 檢測座標:3.3 H值 == 72.8011 760 ============================H值計算完畢============================ 761 762 檢測座標:3.3 F值 == 96 763 ============================================================================================= 764 765 766 ----------------------------G值計算開始---------------------------- 767 檢測座標:3,4 768 檢測座標->x:3 769 minNodeF->x:4 770 檢測座標->x - minNodeF->x == 1 771 ---------------------------------- 772 檢測座標->y:4 773 minNodeF->y:3 774 檢測座標->y - minNodeF->y == 1 775 ---------------------------------- 776 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 777 檢測座標:3.4 -->G值 == 28 778 ============================G值計算完畢============================ 779 780 檢測座標:3.4 781 終點->x:5 782 檢測座標->x:3 783 (double)(終點->x - 檢測座標->x) == 2 784 (double)(終點->x - 檢測座標->x)^2 == 4 785 ---------------------------------- 786 終點->y:10 787 檢測座標->y:4 788 (double)(終點->y - 檢測座標->y) == 6 789 (double)(終點->y - 檢測座標->y)^2 == 36 790 ---------------------------------- 791 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 40 792 ---------------------------------- 793 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 6.32456 794 ---------------------------------- 795 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==63.2456 796 檢測座標:3.4 H值 == 63.2456 797 ============================H值計算完畢============================ 798 799 檢測座標:3.4 F值 == 91 800 ============================================================================================= 801 802 803 >>4,2 在開放連結串列 跳過<< 804 >>4,4 在開放連結串列 跳過<< 805 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 806 開放連結串列第2個節點為: 4,2 F值為:90 --->父節點為:5,2 807 開放連結串列第3個節點為: 5,1 F值為:100 --->父節點為:5,2 808 開放連結串列第4個節點為: 6,1 F值為:104 --->父節點為:5,2 809 開放連結串列第5個節點為: 6,2 F值為:90 --->父節點為:5,2 810 開放連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 811 開放連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 812 開放連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 813 開放連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 814 開放連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 815 開放連結串列第11個節點為: 3,2 F值為:110 --->父節點為:4,3 816 開放連結串列第12個節點為: 3,3 F值為:96 --->父節點為:4,3 817 開放連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 818 =================================== 819 從開放列表中取最小 F 的節點為:6.3 820 ================================================= 821 開放連結串列移除、關閉連結串列增加節點為: 6,3 F值為:84 822 ======================================================= 823 關閉連結串列第1個節點為: 5,2 F值為:0 824 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 825 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 826 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 827 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 828 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 829 =========================================================== 830 831 832 判斷周圍座標點: 5,2 833 >>5,2不可用於下步判斷<< 834 判斷周圍座標點: 5,3 835 >>5,3不可用於下步判斷<< 836 判斷周圍座標點: 5,4 837 >>5,4不可用於下步判斷<< 838 判斷周圍座標點: 6,2 839 判斷周圍座標點: 6,3 840 >>6,3不可用於下步判斷<< 841 判斷周圍座標點: 6,4 842 判斷周圍座標點: 7,2 843 判斷周圍座標點: 7,3 844 判斷周圍座標點: 7,4 845 minNodeF周圍點收集判斷完畢 846 >>6,2 在開放連結串列 跳過<< 847 >>6,4 在開放連結串列 跳過<< 848 ----------------------------G值計算開始---------------------------- 849 檢測座標:7,2 850 檢測座標->x:7 851 minNodeF->x:6 852 檢測座標->x - minNodeF->x == 1 853 ---------------------------------- 854 檢測座標->y:2 855 minNodeF->y:3 856 檢測座標->y - minNodeF->y == 1 857 ---------------------------------- 858 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 859 檢測座標:7.2 -->G值 == 28 860 ============================G值計算完畢============================ 861 862 檢測座標:7.2 863 終點->x:5 864 檢測座標->x:7 865 (double)(終點->x - 檢測座標->x) == -2 866 (double)(終點->x - 檢測座標->x)^2 == 4 867 ---------------------------------- 868 終點->y:10 869 檢測座標->y:2 870 (double)(終點->y - 檢測座標->y) == 8 871 (double)(終點->y - 檢測座標->y)^2 == 64 872 ---------------------------------- 873 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 68 874 ---------------------------------- 875 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 8.24621 876 ---------------------------------- 877 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==82.4621 878 檢測座標:7.2 H值 == 82.4621 879 ============================H值計算完畢============================ 880 881 檢測座標:7.2 F值 == 110 882 ============================================================================================= 883 884 885 ----------------------------G值計算開始---------------------------- 886 檢測座標:7,3 887 檢測座標->x:7 888 minNodeF->x:6 889 檢測座標->x - minNodeF->x == 1 890 ---------------------------------- 891 檢測座標->y:3 892 minNodeF->y:3 893 檢測座標->y - minNodeF->y == 0 894 ---------------------------------- 895 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 896 檢測座標:7.3 -->G值 == 24 897 ============================G值計算完畢============================ 898 899 檢測座標:7.3 900 終點->x:5 901 檢測座標->x:7 902 (double)(終點->x - 檢測座標->x) == -2 903 (double)(終點->x - 檢測座標->x)^2 == 4 904 ---------------------------------- 905 終點->y:10 906 檢測座標->y:3 907 (double)(終點->y - 檢測座標->y) == 7 908 (double)(終點->y - 檢測座標->y)^2 == 49 909 ---------------------------------- 910 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 53 911 ---------------------------------- 912 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 7.28011 913 ---------------------------------- 914 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==72.8011 915 檢測座標:7.3 H值 == 72.8011 916 ============================H值計算完畢============================ 917 918 檢測座標:7.3 F值 == 96 919 ============================================================================================= 920 921 922 ----------------------------G值計算開始---------------------------- 923 檢測座標:7,4 924 檢測座標->x:7 925 minNodeF->x:6 926 檢測座標->x - minNodeF->x == 1 927 ---------------------------------- 928 檢測座標->y:4 929 minNodeF->y:3 930 檢測座標->y - minNodeF->y == 1 931 ---------------------------------- 932 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 933 檢測座標:7.4 -->G值 == 28 934 ============================G值計算完畢============================ 935 936 檢測座標:7.4 937 終點->x:5 938 檢測座標->x:7 939 (double)(終點->x - 檢測座標->x) == -2 940 (double)(終點->x - 檢測座標->x)^2 == 4 941 ---------------------------------- 942 終點->y:10 943 檢測座標->y:4 944 (double)(終點->y - 檢測座標->y) == 6 945 (double)(終點->y - 檢測座標->y)^2 == 36 946 ---------------------------------- 947 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 40 948 ---------------------------------- 949 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 6.32456 950 ---------------------------------- 951 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==63.2456 952 檢測座標:7.4 H值 == 63.2456 953 ============================H值計算完畢============================ 954 955 檢測座標:7.4 F值 == 91 956 ============================================================================================= 957 958 959 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 960 開放連結串列第2個節點為: 4,2 F值為:90 --->父節點為:5,2 961 開放連結串列第3個節點為: 5,1 F值為:100 --->父節點為:5,2 962 開放連結串列第4個節點為: 6,1 F值為:104 --->父節點為:5,2 963 開放連結串列第5個節點為: 6,2 F值為:90 --->父節點為:5,2 964 開放連結串列第6個節點為: 4,4 F值為:84 --->父節點為:5,3 965 開放連結串列第7個節點為: 6,4 F值為:84 --->父節點為:5,3 966 開放連結串列第8個節點為: 4,5 F值為:84 --->父節點為:5,4 967 開放連結串列第9個節點為: 6,5 F值為:84 --->父節點為:5,4 968 開放連結串列第10個節點為: 3,2 F值為:110 --->父節點為:4,3 969 開放連結串列第11個節點為: 3,3 F值為:96 --->父節點為:4,3 970 開放連結串列第12個節點為: 3,4 F值為:91 --->父節點為:4,3 971 開放連結串列第13個節點為: 7,2 F值為:110 --->父節點為:6,3 972 開放連結串列第14個節點為: 7,3 F值為:96 --->父節點為:6,3 973 開放連結串列第15個節點為: 7,4 F值為:91 --->父節點為:6,3 974 =================================== 975 從開放列表中取最小 F 的節點為:4.4 976 ================================================= 977 開放連結串列移除、關閉連結串列增加節點為: 4,4 F值為:84 978 ======================================================= 979 關閉連結串列第1個節點為: 5,2 F值為:0 980 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 981 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 982 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 983 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 984 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 985 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 986 =========================================================== 987 988 989 判斷周圍座標點: 3,3 990 判斷周圍座標點: 3,4 991 判斷周圍座標點: 3,5 992 判斷周圍座標點: 4,3 993 >>4,3不可用於下步判斷<< 994 判斷周圍座標點: 4,4 995 >>4,4不可用於下步判斷<< 996 判斷周圍座標點: 4,5 997 判斷周圍座標點: 5,3 998 >>5,3不可用於下步判斷<< 999 判斷周圍座標點: 5,4 1000 >>5,4不可用於下步判斷<< 1001 判斷周圍座標點: 5,5 1002 >>5,5不可用於下步判斷<< 1003 minNodeF周圍點收集判斷完畢 1004 >>3,3 在開放連結串列 跳過<< 1005 >>3,4 在開放連結串列 跳過<< 1006 ----------------------------G值計算開始---------------------------- 1007 檢測座標:3,5 1008 檢測座標->x:3 1009 minNodeF->x:4 1010 檢測座標->x - minNodeF->x == 1 1011 ---------------------------------- 1012 檢測座標->y:5 1013 minNodeF->y:4 1014 檢測座標->y - minNodeF->y == 1 1015 ---------------------------------- 1016 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 1017 檢測座標:3.5 -->G值 == 38 1018 ============================G值計算完畢============================ 1019 1020 檢測座標:3.5 1021 終點->x:5 1022 檢測座標->x:3 1023 (double)(終點->x - 檢測座標->x) == 2 1024 (double)(終點->x - 檢測座標->x)^2 == 4 1025 ---------------------------------- 1026 終點->y:10 1027 檢測座標->y:5 1028 (double)(終點->y - 檢測座標->y) == 5 1029 (double)(終點->y - 檢測座標->y)^2 == 25 1030 ---------------------------------- 1031 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 29 1032 ---------------------------------- 1033 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 5.38516 1034 ---------------------------------- 1035 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==53.8516 1036 檢測座標:3.5 H值 == 53.8516 1037 ============================H值計算完畢============================ 1038 1039 檢測座標:3.5 F值 == 91 1040 ============================================================================================= 1041 1042 1043 >>4,5 在開放連結串列 跳過<< 1044 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 1045 開放連結串列第2個節點為: 4,2 F值為:90 --->父節點為:5,2 1046 開放連結串列第3個節點為: 5,1 F值為:100 --->父節點為:5,2 1047 開放連結串列第4個節點為: 6,1 F值為:104 --->父節點為:5,2 1048 開放連結串列第5個節點為: 6,2 F值為:90 --->父節點為:5,2 1049 開放連結串列第6個節點為: 6,4 F值為:84 --->父節點為:5,3 1050 開放連結串列第7個節點為: 4,5 F值為:84 --->父節點為:5,4 1051 開放連結串列第8個節點為: 6,5 F值為:84 --->父節點為:5,4 1052 開放連結串列第9個節點為: 3,2 F值為:110 --->父節點為:4,3 1053 開放連結串列第10個節點為: 3,3 F值為:96 --->父節點為:4,3 1054 開放連結串列第11個節點為: 3,4 F值為:91 --->父節點為:4,3 1055 開放連結串列第12個節點為: 7,2 F值為:110 --->父節點為:6,3 1056 開放連結串列第13個節點為: 7,3 F值為:96 --->父節點為:6,3 1057 開放連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 1058 開放連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 1059 =================================== 1060 從開放列表中取最小 F 的節點為:6.4 1061 ================================================= 1062 開放連結串列移除、關閉連結串列增加節點為: 6,4 F值為:84 1063 ======================================================= 1064 關閉連結串列第1個節點為: 5,2 F值為:0 1065 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 1066 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 1067 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 1068 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 1069 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 1070 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 1071 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 1072 =========================================================== 1073 1074 1075 判斷周圍座標點: 5,3 1076 >>5,3不可用於下步判斷<< 1077 判斷周圍座標點: 5,4 1078 >>5,4不可用於下步判斷<< 1079 判斷周圍座標點: 5,5 1080 >>5,5不可用於下步判斷<< 1081 判斷周圍座標點: 6,3 1082 >>6,3不可用於下步判斷<< 1083 判斷周圍座標點: 6,4 1084 >>6,4不可用於下步判斷<< 1085 判斷周圍座標點: 6,5 1086 判斷周圍座標點: 7,3 1087 判斷周圍座標點: 7,4 1088 判斷周圍座標點: 7,5 1089 minNodeF周圍點收集判斷完畢 1090 >>6,5 在開放連結串列 跳過<< 1091 >>7,3 在開放連結串列 跳過<< 1092 >>7,4 在開放連結串列 跳過<< 1093 ----------------------------G值計算開始---------------------------- 1094 檢測座標:7,5 1095 檢測座標->x:7 1096 minNodeF->x:6 1097 檢測座標->x - minNodeF->x == 1 1098 ---------------------------------- 1099 檢測座標->y:5 1100 minNodeF->y:4 1101 檢測座標->y - minNodeF->y == 1 1102 ---------------------------------- 1103 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 1104 檢測座標:7.5 -->G值 == 38 1105 ============================G值計算完畢============================ 1106 1107 檢測座標:7.5 1108 終點->x:5 1109 檢測座標->x:7 1110 (double)(終點->x - 檢測座標->x) == -2 1111 (double)(終點->x - 檢測座標->x)^2 == 4 1112 ---------------------------------- 1113 終點->y:10 1114 檢測座標->y:5 1115 (double)(終點->y - 檢測座標->y) == 5 1116 (double)(終點->y - 檢測座標->y)^2 == 25 1117 ---------------------------------- 1118 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 29 1119 ---------------------------------- 1120 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 5.38516 1121 ---------------------------------- 1122 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==53.8516 1123 檢測座標:7.5 H值 == 53.8516 1124 ============================H值計算完畢============================ 1125 1126 檢測座標:7.5 F值 == 91 1127 ============================================================================================= 1128 1129 1130 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 1131 開放連結串列第2個節點為: 4,2 F值為:90 --->父節點為:5,2 1132 開放連結串列第3個節點為: 5,1 F值為:100 --->父節點為:5,2 1133 開放連結串列第4個節點為: 6,1 F值為:104 --->父節點為:5,2 1134 開放連結串列第5個節點為: 6,2 F值為:90 --->父節點為:5,2 1135 開放連結串列第6個節點為: 4,5 F值為:84 --->父節點為:5,4 1136 開放連結串列第7個節點為: 6,5 F值為:84 --->父節點為:5,4 1137 開放連結串列第8個節點為: 3,2 F值為:110 --->父節點為:4,3 1138 開放連結串列第9個節點為: 3,3 F值為:96 --->父節點為:4,3 1139 開放連結串列第10個節點為: 3,4 F值為:91 --->父節點為:4,3 1140 開放連結串列第11個節點為: 7,2 F值為:110 --->父節點為:6,3 1141 開放連結串列第12個節點為: 7,3 F值為:96 --->父節點為:6,3 1142 開放連結串列第13個節點為: 7,4 F值為:91 --->父節點為:6,3 1143 開放連結串列第14個節點為: 3,5 F值為:91 --->父節點為:4,4 1144 開放連結串列第15個節點為: 7,5 F值為:91 --->父節點為:6,4 1145 =================================== 1146 從開放列表中取最小 F 的節點為:4.5 1147 ================================================= 1148 開放連結串列移除、關閉連結串列增加節點為: 4,5 F值為:84 1149 ======================================================= 1150 關閉連結串列第1個節點為: 5,2 F值為:0 1151 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 1152 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 1153 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 1154 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 1155 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 1156 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 1157 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 1158 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 1159 =========================================================== 1160 1161 1162 判斷周圍座標點: 3,4 1163 判斷周圍座標點: 3,5 1164 判斷周圍座標點: 3,6 1165 >>3,6不可用於下步判斷<< 1166 判斷周圍座標點: 4,4 1167 >>4,4不可用於下步判斷<< 1168 判斷周圍座標點: 4,5 1169 >>4,5不可用於下步判斷<< 1170 判斷周圍座標點: 4,6 1171 >>4,6不可用於下步判斷<< 1172 判斷周圍座標點: 5,4 1173 >>5,4不可用於下步判斷<< 1174 判斷周圍座標點: 5,5 1175 >>5,5不可用於下步判斷<< 1176 判斷周圍座標點: 5,6 1177 >>5,6不可用於下步判斷<< 1178 minNodeF周圍點收集判斷完畢 1179 >>3,4 在開放連結串列 跳過<< 1180 >>3,5 在開放連結串列 跳過<< 1181 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 1182 開放連結串列第2個節點為: 4,2 F值為:90 --->父節點為:5,2 1183 開放連結串列第3個節點為: 5,1 F值為:100 --->父節點為:5,2 1184 開放連結串列第4個節點為: 6,1 F值為:104 --->父節點為:5,2 1185 開放連結串列第5個節點為: 6,2 F值為:90 --->父節點為:5,2 1186 開放連結串列第6個節點為: 6,5 F值為:84 --->父節點為:5,4 1187 開放連結串列第7個節點為: 3,2 F值為:110 --->父節點為:4,3 1188 開放連結串列第8個節點為: 3,3 F值為:96 --->父節點為:4,3 1189 開放連結串列第9個節點為: 3,4 F值為:91 --->父節點為:4,3 1190 開放連結串列第10個節點為: 7,2 F值為:110 --->父節點為:6,3 1191 開放連結串列第11個節點為: 7,3 F值為:96 --->父節點為:6,3 1192 開放連結串列第12個節點為: 7,4 F值為:91 --->父節點為:6,3 1193 開放連結串列第13個節點為: 3,5 F值為:91 --->父節點為:4,4 1194 開放連結串列第14個節點為: 7,5 F值為:91 --->父節點為:6,4 1195 =================================== 1196 從開放列表中取最小 F 的節點為:6.5 1197 ================================================= 1198 開放連結串列移除、關閉連結串列增加節點為: 6,5 F值為:84 1199 ======================================================= 1200 關閉連結串列第1個節點為: 5,2 F值為:0 1201 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 1202 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 1203 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 1204 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 1205 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 1206 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 1207 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 1208 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 1209 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 1210 =========================================================== 1211 1212 1213 判斷周圍座標點: 5,4 1214 >>5,4不可用於下步判斷<< 1215 判斷周圍座標點: 5,5 1216 >>5,5不可用於下步判斷<< 1217 判斷周圍座標點: 5,6 1218 >>5,6不可用於下步判斷<< 1219 判斷周圍座標點: 6,4 1220 >>6,4不可用於下步判斷<< 1221 判斷周圍座標點: 6,5 1222 >>6,5不可用於下步判斷<< 1223 判斷周圍座標點: 6,6 1224 >>6,6不可用於下步判斷<< 1225 判斷周圍座標點: 7,4 1226 判斷周圍座標點: 7,5 1227 判斷周圍座標點: 7,6 1228 >>7,6不可用於下步判斷<< 1229 minNodeF周圍點收集判斷完畢 1230 >>7,4 在開放連結串列 跳過<< 1231 >>7,5 在開放連結串列 跳過<< 1232 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 1233 開放連結串列第2個節點為: 4,2 F值為:90 --->父節點為:5,2 1234 開放連結串列第3個節點為: 5,1 F值為:100 --->父節點為:5,2 1235 開放連結串列第4個節點為: 6,1 F值為:104 --->父節點為:5,2 1236 開放連結串列第5個節點為: 6,2 F值為:90 --->父節點為:5,2 1237 開放連結串列第6個節點為: 3,2 F值為:110 --->父節點為:4,3 1238 開放連結串列第7個節點為: 3,3 F值為:96 --->父節點為:4,3 1239 開放連結串列第8個節點為: 3,4 F值為:91 --->父節點為:4,3 1240 開放連結串列第9個節點為: 7,2 F值為:110 --->父節點為:6,3 1241 開放連結串列第10個節點為: 7,3 F值為:96 --->父節點為:6,3 1242 開放連結串列第11個節點為: 7,4 F值為:91 --->父節點為:6,3 1243 開放連結串列第12個節點為: 3,5 F值為:91 --->父節點為:4,4 1244 開放連結串列第13個節點為: 7,5 F值為:91 --->父節點為:6,4 1245 =================================== 1246 從開放列表中取最小 F 的節點為:4.2 1247 ================================================= 1248 開放連結串列移除、關閉連結串列增加節點為: 4,2 F值為:90 1249 ======================================================= 1250 關閉連結串列第1個節點為: 5,2 F值為:0 1251 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 1252 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 1253 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 1254 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 1255 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 1256 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 1257 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 1258 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 1259 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 1260 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 1261 =========================================================== 1262 1263 1264 判斷周圍座標點: 3,1 1265 判斷周圍座標點: 3,2 1266 判斷周圍座標點: 3,3 1267 判斷周圍座標點: 4,1 1268 判斷周圍座標點: 4,2 1269 >>4,2不可用於下步判斷<< 1270 判斷周圍座標點: 4,3 1271 >>4,3不可用於下步判斷<< 1272 判斷周圍座標點: 5,1 1273 判斷周圍座標點: 5,2 1274 >>5,2不可用於下步判斷<< 1275 判斷周圍座標點: 5,3 1276 >>5,3不可用於下步判斷<< 1277 minNodeF周圍點收集判斷完畢 1278 ----------------------------G值計算開始---------------------------- 1279 檢測座標:3,1 1280 檢測座標->x:3 1281 minNodeF->x:4 1282 檢測座標->x - minNodeF->x == 1 1283 ---------------------------------- 1284 檢測座標->y:1 1285 minNodeF->y:2 1286 檢測座標->y - minNodeF->y == 1 1287 ---------------------------------- 1288 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 1289 檢測座標:3.1 -->G值 == 24 1290 ============================G值計算完畢============================ 1291 1292 檢測座標:3.1 1293 終點->x:5 1294 檢測座標->x:3 1295 (double)(終點->x - 檢測座標->x) == 2 1296 (double)(終點->x - 檢測座標->x)^2 == 4 1297 ---------------------------------- 1298 終點->y:10 1299 檢測座標->y:1 1300 (double)(終點->y - 檢測座標->y) == 9 1301 (double)(終點->y - 檢測座標->y)^2 == 81 1302 ---------------------------------- 1303 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 85 1304 ---------------------------------- 1305 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 9.21954 1306 ---------------------------------- 1307 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==92.1954 1308 檢測座標:3.1 H值 == 92.1954 1309 ============================H值計算完畢============================ 1310 1311 檢測座標:3.1 F值 == 116 1312 ============================================================================================= 1313 1314 1315 >>3,2 在開放連結串列 跳過<< 1316 >>3,3 在開放連結串列 跳過<< 1317 >>4,1 在開放連結串列 跳過<< 1318 >>5,1 在開放連結串列 跳過<< 1319 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 1320 開放連結串列第2個節點為: 5,1 F值為:100 --->父節點為:5,2 1321 開放連結串列第3個節點為: 6,1 F值為:104 --->父節點為:5,2 1322 開放連結串列第4個節點為: 6,2 F值為:90 --->父節點為:5,2 1323 開放連結串列第5個節點為: 3,2 F值為:110 --->父節點為:4,3 1324 開放連結串列第6個節點為: 3,3 F值為:96 --->父節點為:4,3 1325 開放連結串列第7個節點為: 3,4 F值為:91 --->父節點為:4,3 1326 開放連結串列第8個節點為: 7,2 F值為:110 --->父節點為:6,3 1327 開放連結串列第9個節點為: 7,3 F值為:96 --->父節點為:6,3 1328 開放連結串列第10個節點為: 7,4 F值為:91 --->父節點為:6,3 1329 開放連結串列第11個節點為: 3,5 F值為:91 --->父節點為:4,4 1330 開放連結串列第12個節點為: 7,5 F值為:91 --->父節點為:6,4 1331 開放連結串列第13個節點為: 3,1 F值為:116 --->父節點為:4,2 1332 =================================== 1333 從開放列表中取最小 F 的節點為:6.2 1334 ================================================= 1335 開放連結串列移除、關閉連結串列增加節點為: 6,2 F值為:90 1336 ======================================================= 1337 關閉連結串列第1個節點為: 5,2 F值為:0 1338 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 1339 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 1340 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 1341 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 1342 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 1343 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 1344 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 1345 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 1346 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 1347 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 1348 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 1349 =========================================================== 1350 1351 1352 判斷周圍座標點: 5,1 1353 判斷周圍座標點: 5,2 1354 >>5,2不可用於下步判斷<< 1355 判斷周圍座標點: 5,3 1356 >>5,3不可用於下步判斷<< 1357 判斷周圍座標點: 6,1 1358 判斷周圍座標點: 6,2 1359 >>6,2不可用於下步判斷<< 1360 判斷周圍座標點: 6,3 1361 >>6,3不可用於下步判斷<< 1362 判斷周圍座標點: 7,1 1363 判斷周圍座標點: 7,2 1364 判斷周圍座標點: 7,3 1365 minNodeF周圍點收集判斷完畢 1366 >>5,1 在開放連結串列 跳過<< 1367 >>6,1 在開放連結串列 跳過<< 1368 ----------------------------G值計算開始---------------------------- 1369 檢測座標:7,1 1370 檢測座標->x:7 1371 minNodeF->x:6 1372 檢測座標->x - minNodeF->x == 1 1373 ---------------------------------- 1374 檢測座標->y:1 1375 minNodeF->y:2 1376 檢測座標->y - minNodeF->y == 1 1377 ---------------------------------- 1378 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 1379 檢測座標:7.1 -->G值 == 24 1380 ============================G值計算完畢============================ 1381 1382 檢測座標:7.1 1383 終點->x:5 1384 檢測座標->x:7 1385 (double)(終點->x - 檢測座標->x) == -2 1386 (double)(終點->x - 檢測座標->x)^2 == 4 1387 ---------------------------------- 1388 終點->y:10 1389 檢測座標->y:1 1390 (double)(終點->y - 檢測座標->y) == 9 1391 (double)(終點->y - 檢測座標->y)^2 == 81 1392 ---------------------------------- 1393 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 85 1394 ---------------------------------- 1395 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 9.21954 1396 ---------------------------------- 1397 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==92.1954 1398 檢測座標:7.1 H值 == 92.1954 1399 ============================H值計算完畢============================ 1400 1401 檢測座標:7.1 F值 == 116 1402 ============================================================================================= 1403 1404 1405 >>7,2 在開放連結串列 跳過<< 1406 >>7,3 在開放連結串列 跳過<< 1407 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 1408 開放連結串列第2個節點為: 5,1 F值為:100 --->父節點為:5,2 1409 開放連結串列第3個節點為: 6,1 F值為:104 --->父節點為:5,2 1410 開放連結串列第4個節點為: 3,2 F值為:110 --->父節點為:4,3 1411 開放連結串列第5個節點為: 3,3 F值為:96 --->父節點為:4,3 1412 開放連結串列第6個節點為: 3,4 F值為:91 --->父節點為:4,3 1413 開放連結串列第7個節點為: 7,2 F值為:110 --->父節點為:6,3 1414 開放連結串列第8個節點為: 7,3 F值為:96 --->父節點為:6,3 1415 開放連結串列第9個節點為: 7,4 F值為:91 --->父節點為:6,3 1416 開放連結串列第10個節點為: 3,5 F值為:91 --->父節點為:4,4 1417 開放連結串列第11個節點為: 7,5 F值為:91 --->父節點為:6,4 1418 開放連結串列第12個節點為: 3,1 F值為:116 --->父節點為:4,2 1419 開放連結串列第13個節點為: 7,1 F值為:116 --->父節點為:6,2 1420 =================================== 1421 從開放列表中取最小 F 的節點為:3.4 1422 ================================================= 1423 開放連結串列移除、關閉連結串列增加節點為: 3,4 F值為:91 1424 ======================================================= 1425 關閉連結串列第1個節點為: 5,2 F值為:0 1426 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 1427 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 1428 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 1429 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 1430 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 1431 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 1432 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 1433 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 1434 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 1435 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 1436 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 1437 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 1438 =========================================================== 1439 1440 1441 判斷周圍座標點: 2,3 1442 判斷周圍座標點: 2,4 1443 判斷周圍座標點: 2,5 1444 判斷周圍座標點: 3,3 1445 判斷周圍座標點: 3,4 1446 >>3,4不可用於下步判斷<< 1447 判斷周圍座標點: 3,5 1448 判斷周圍座標點: 4,3 1449 >>4,3不可用於下步判斷<< 1450 判斷周圍座標點: 4,4 1451 >>4,4不可用於下步判斷<< 1452 判斷周圍座標點: 4,5 1453 >>4,5不可用於下步判斷<< 1454 minNodeF周圍點收集判斷完畢 1455 ----------------------------G值計算開始---------------------------- 1456 檢測座標:2,3 1457 檢測座標->x:2 1458 minNodeF->x:3 1459 檢測座標->x - minNodeF->x == 1 1460 ---------------------------------- 1461 檢測座標->y:3 1462 minNodeF->y:4 1463 檢測座標->y - minNodeF->y == 1 1464 ---------------------------------- 1465 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 1466 檢測座標:2.3 -->G值 == 42 1467 ============================G值計算完畢============================ 1468 1469 檢測座標:2.3 1470 終點->x:5 1471 檢測座標->x:2 1472 (double)(終點->x - 檢測座標->x) == 3 1473 (double)(終點->x - 檢測座標->x)^2 == 9 1474 ---------------------------------- 1475 終點->y:10 1476 檢測座標->y:3 1477 (double)(終點->y - 檢測座標->y) == 7 1478 (double)(終點->y - 檢測座標->y)^2 == 49 1479 ---------------------------------- 1480 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 58 1481 ---------------------------------- 1482 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 7.61577 1483 ---------------------------------- 1484 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==76.1577 1485 檢測座標:2.3 H值 == 76.1577 1486 ============================H值計算完畢============================ 1487 1488 檢測座標:2.3 F值 == 118 1489 ============================================================================================= 1490 1491 1492 ----------------------------G值計算開始---------------------------- 1493 檢測座標:2,4 1494 檢測座標->x:2 1495 minNodeF->x:3 1496 檢測座標->x - minNodeF->x == 1 1497 ---------------------------------- 1498 檢測座標->y:4 1499 minNodeF->y:4 1500 檢測座標->y - minNodeF->y == 0 1501 ---------------------------------- 1502 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 1503 檢測座標:2.4 -->G值 == 38 1504 ============================G值計算完畢============================ 1505 1506 檢測座標:2.4 1507 終點->x:5 1508 檢測座標->x:2 1509 (double)(終點->x - 檢測座標->x) == 3 1510 (double)(終點->x - 檢測座標->x)^2 == 9 1511 ---------------------------------- 1512 終點->y:10 1513 檢測座標->y:4 1514 (double)(終點->y - 檢測座標->y) == 6 1515 (double)(終點->y - 檢測座標->y)^2 == 36 1516 ---------------------------------- 1517 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 45 1518 ---------------------------------- 1519 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 6.7082 1520 ---------------------------------- 1521 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==67.082 1522 檢測座標:2.4 H值 == 67.082 1523 ============================H值計算完畢============================ 1524 1525 檢測座標:2.4 F值 == 105 1526 ============================================================================================= 1527 1528 1529 ----------------------------G值計算開始---------------------------- 1530 檢測座標:2,5 1531 檢測座標->x:2 1532 minNodeF->x:3 1533 檢測座標->x - minNodeF->x == 1 1534 ---------------------------------- 1535 檢測座標->y:5 1536 minNodeF->y:4 1537 檢測座標->y - minNodeF->y == 1 1538 ---------------------------------- 1539 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 1540 檢測座標:2.5 -->G值 == 42 1541 ============================G值計算完畢============================ 1542 1543 檢測座標:2.5 1544 終點->x:5 1545 檢測座標->x:2 1546 (double)(終點->x - 檢測座標->x) == 3 1547 (double)(終點->x - 檢測座標->x)^2 == 9 1548 ---------------------------------- 1549 終點->y:10 1550 檢測座標->y:5 1551 (double)(終點->y - 檢測座標->y) == 5 1552 (double)(終點->y - 檢測座標->y)^2 == 25 1553 ---------------------------------- 1554 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 34 1555 ---------------------------------- 1556 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 5.83095 1557 ---------------------------------- 1558 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==58.3095 1559 檢測座標:2.5 H值 == 58.3095 1560 ============================H值計算完畢============================ 1561 1562 檢測座標:2.5 F值 == 100 1563 ============================================================================================= 1564 1565 1566 >>3,3 在開放連結串列 跳過<< 1567 >>3,5 在開放連結串列 跳過<< 1568 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 1569 開放連結串列第2個節點為: 5,1 F值為:100 --->父節點為:5,2 1570 開放連結串列第3個節點為: 6,1 F值為:104 --->父節點為:5,2 1571 開放連結串列第4個節點為: 3,2 F值為:110 --->父節點為:4,3 1572 開放連結串列第5個節點為: 3,3 F值為:96 --->父節點為:4,3 1573 開放連結串列第6個節點為: 7,2 F值為:110 --->父節點為:6,3 1574 開放連結串列第7個節點為: 7,3 F值為:96 --->父節點為:6,3 1575 開放連結串列第8個節點為: 7,4 F值為:91 --->父節點為:6,3 1576 開放連結串列第9個節點為: 3,5 F值為:91 --->父節點為:4,4 1577 開放連結串列第10個節點為: 7,5 F值為:91 --->父節點為:6,4 1578 開放連結串列第11個節點為: 3,1 F值為:116 --->父節點為:4,2 1579 開放連結串列第12個節點為: 7,1 F值為:116 --->父節點為:6,2 1580 開放連結串列第13個節點為: 2,3 F值為:118 --->父節點為:3,4 1581 開放連結串列第14個節點為: 2,4 F值為:105 --->父節點為:3,4 1582 開放連結串列第15個節點為: 2,5 F值為:100 --->父節點為:3,4 1583 =================================== 1584 從開放列表中取最小 F 的節點為:7.4 1585 ================================================= 1586 開放連結串列移除、關閉連結串列增加節點為: 7,4 F值為:91 1587 ======================================================= 1588 關閉連結串列第1個節點為: 5,2 F值為:0 1589 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 1590 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 1591 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 1592 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 1593 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 1594 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 1595 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 1596 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 1597 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 1598 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 1599 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 1600 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 1601 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 1602 =========================================================== 1603 1604 1605 判斷周圍座標點: 6,3 1606 >>6,3不可用於下步判斷<< 1607 判斷周圍座標點: 6,4 1608 >>6,4不可用於下步判斷<< 1609 判斷周圍座標點: 6,5 1610 >>6,5不可用於下步判斷<< 1611 判斷周圍座標點: 7,3 1612 判斷周圍座標點: 7,4 1613 >>7,4不可用於下步判斷<< 1614 判斷周圍座標點: 7,5 1615 判斷周圍座標點: 8,3 1616 判斷周圍座標點: 8,4 1617 判斷周圍座標點: 8,5 1618 minNodeF周圍點收集判斷完畢 1619 >>7,3 在開放連結串列 跳過<< 1620 >>7,5 在開放連結串列 跳過<< 1621 ----------------------------G值計算開始---------------------------- 1622 檢測座標:8,3 1623 檢測座標->x:8 1624 minNodeF->x:7 1625 檢測座標->x - minNodeF->x == 1 1626 ---------------------------------- 1627 檢測座標->y:3 1628 minNodeF->y:4 1629 檢測座標->y - minNodeF->y == 1 1630 ---------------------------------- 1631 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 1632 檢測座標:8.3 -->G值 == 42 1633 ============================G值計算完畢============================ 1634 1635 檢測座標:8.3 1636 終點->x:5 1637 檢測座標->x:8 1638 (double)(終點->x - 檢測座標->x) == -3 1639 (double)(終點->x - 檢測座標->x)^2 == 9 1640 ---------------------------------- 1641 終點->y:10 1642 檢測座標->y:3 1643 (double)(終點->y - 檢測座標->y) == 7 1644 (double)(終點->y - 檢測座標->y)^2 == 49 1645 ---------------------------------- 1646 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 58 1647 ---------------------------------- 1648 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 7.61577 1649 ---------------------------------- 1650 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==76.1577 1651 檢測座標:8.3 H值 == 76.1577 1652 ============================H值計算完畢============================ 1653 1654 檢測座標:8.3 F值 == 118 1655 ============================================================================================= 1656 1657 1658 ----------------------------G值計算開始---------------------------- 1659 檢測座標:8,4 1660 檢測座標->x:8 1661 minNodeF->x:7 1662 檢測座標->x - minNodeF->x == 1 1663 ---------------------------------- 1664 檢測座標->y:4 1665 minNodeF->y:4 1666 檢測座標->y - minNodeF->y == 0 1667 ---------------------------------- 1668 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 1669 檢測座標:8.4 -->G值 == 38 1670 ============================G值計算完畢============================ 1671 1672 檢測座標:8.4 1673 終點->x:5 1674 檢測座標->x:8 1675 (double)(終點->x - 檢測座標->x) == -3 1676 (double)(終點->x - 檢測座標->x)^2 == 9 1677 ---------------------------------- 1678 終點->y:10 1679 檢測座標->y:4 1680 (double)(終點->y - 檢測座標->y) == 6 1681 (double)(終點->y - 檢測座標->y)^2 == 36 1682 ---------------------------------- 1683 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 45 1684 ---------------------------------- 1685 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 6.7082 1686 ---------------------------------- 1687 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==67.082 1688 檢測座標:8.4 H值 == 67.082 1689 ============================H值計算完畢============================ 1690 1691 檢測座標:8.4 F值 == 105 1692 ============================================================================================= 1693 1694 1695 ----------------------------G值計算開始---------------------------- 1696 檢測座標:8,5 1697 檢測座標->x:8 1698 minNodeF->x:7 1699 檢測座標->x - minNodeF->x == 1 1700 ---------------------------------- 1701 檢測座標->y:5 1702 minNodeF->y:4 1703 檢測座標->y - minNodeF->y == 1 1704 ---------------------------------- 1705 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 1706 檢測座標:8.5 -->G值 == 42 1707 ============================G值計算完畢============================ 1708 1709 檢測座標:8.5 1710 終點->x:5 1711 檢測座標->x:8 1712 (double)(終點->x - 檢測座標->x) == -3 1713 (double)(終點->x - 檢測座標->x)^2 == 9 1714 ---------------------------------- 1715 終點->y:10 1716 檢測座標->y:5 1717 (double)(終點->y - 檢測座標->y) == 5 1718 (double)(終點->y - 檢測座標->y)^2 == 25 1719 ---------------------------------- 1720 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 34 1721 ---------------------------------- 1722 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 5.83095 1723 ---------------------------------- 1724 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==58.3095 1725 檢測座標:8.5 H值 == 58.3095 1726 ============================H值計算完畢============================ 1727 1728 檢測座標:8.5 F值 == 100 1729 ============================================================================================= 1730 1731 1732 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 1733 開放連結串列第2個節點為: 5,1 F值為:100 --->父節點為:5,2 1734 開放連結串列第3個節點為: 6,1 F值為:104 --->父節點為:5,2 1735 開放連結串列第4個節點為: 3,2 F值為:110 --->父節點為:4,3 1736 開放連結串列第5個節點為: 3,3 F值為:96 --->父節點為:4,3 1737 開放連結串列第6個節點為: 7,2 F值為:110 --->父節點為:6,3 1738 開放連結串列第7個節點為: 7,3 F值為:96 --->父節點為:6,3 1739 開放連結串列第8個節點為: 3,5 F值為:91 --->父節點為:4,4 1740 開放連結串列第9個節點為: 7,5 F值為:91 --->父節點為:6,4 1741 開放連結串列第10個節點為: 3,1 F值為:116 --->父節點為:4,2 1742 開放連結串列第11個節點為: 7,1 F值為:116 --->父節點為:6,2 1743 開放連結串列第12個節點為: 2,3 F值為:118 --->父節點為:3,4 1744 開放連結串列第13個節點為: 2,4 F值為:105 --->父節點為:3,4 1745 開放連結串列第14個節點為: 2,5 F值為:100 --->父節點為:3,4 1746 開放連結串列第15個節點為: 8,3 F值為:118 --->父節點為:7,4 1747 開放連結串列第16個節點為: 8,4 F值為:105 --->父節點為:7,4 1748 開放連結串列第17個節點為: 8,5 F值為:100 --->父節點為:7,4 1749 =================================== 1750 從開放列表中取最小 F 的節點為:3.5 1751 ================================================= 1752 開放連結串列移除、關閉連結串列增加節點為: 3,5 F值為:91 1753 ======================================================= 1754 關閉連結串列第1個節點為: 5,2 F值為:0 1755 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 1756 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 1757 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 1758 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 1759 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 1760 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 1761 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 1762 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 1763 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 1764 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 1765 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 1766 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 1767 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 1768 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 1769 =========================================================== 1770 1771 1772 判斷周圍座標點: 2,4 1773 判斷周圍座標點: 2,5 1774 判斷周圍座標點: 2,6 1775 >>2,6不可用於下步判斷<< 1776 判斷周圍座標點: 3,4 1777 >>3,4不可用於下步判斷<< 1778 判斷周圍座標點: 3,5 1779 >>3,5不可用於下步判斷<< 1780 判斷周圍座標點: 3,6 1781 >>3,6不可用於下步判斷<< 1782 判斷周圍座標點: 4,4 1783 >>4,4不可用於下步判斷<< 1784 判斷周圍座標點: 4,5 1785 >>4,5不可用於下步判斷<< 1786 判斷周圍座標點: 4,6 1787 >>4,6不可用於下步判斷<< 1788 minNodeF周圍點收集判斷完畢 1789 >>2,4 在開放連結串列 跳過<< 1790 >>2,5 在開放連結串列 跳過<< 1791 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 1792 開放連結串列第2個節點為: 5,1 F值為:100 --->父節點為:5,2 1793 開放連結串列第3個節點為: 6,1 F值為:104 --->父節點為:5,2 1794 開放連結串列第4個節點為: 3,2 F值為:110 --->父節點為:4,3 1795 開放連結串列第5個節點為: 3,3 F值為:96 --->父節點為:4,3 1796 開放連結串列第6個節點為: 7,2 F值為:110 --->父節點為:6,3 1797 開放連結串列第7個節點為: 7,3 F值為:96 --->父節點為:6,3 1798 開放連結串列第8個節點為: 7,5 F值為:91 --->父節點為:6,4 1799 開放連結串列第9個節點為: 3,1 F值為:116 --->父節點為:4,2 1800 開放連結串列第10個節點為: 7,1 F值為:116 --->父節點為:6,2 1801 開放連結串列第11個節點為: 2,3 F值為:118 --->父節點為:3,4 1802 開放連結串列第12個節點為: 2,4 F值為:105 --->父節點為:3,4 1803 開放連結串列第13個節點為: 2,5 F值為:100 --->父節點為:3,4 1804 開放連結串列第14個節點為: 8,3 F值為:118 --->父節點為:7,4 1805 開放連結串列第15個節點為: 8,4 F值為:105 --->父節點為:7,4 1806 開放連結串列第16個節點為: 8,5 F值為:100 --->父節點為:7,4 1807 =================================== 1808 從開放列表中取最小 F 的節點為:7.5 1809 ================================================= 1810 開放連結串列移除、關閉連結串列增加節點為: 7,5 F值為:91 1811 ======================================================= 1812 關閉連結串列第1個節點為: 5,2 F值為:0 1813 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 1814 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 1815 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 1816 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 1817 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 1818 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 1819 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 1820 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 1821 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 1822 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 1823 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 1824 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 1825 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 1826 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 1827 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 1828 =========================================================== 1829 1830 1831 判斷周圍座標點: 6,4 1832 >>6,4不可用於下步判斷<< 1833 判斷周圍座標點: 6,5 1834 >>6,5不可用於下步判斷<< 1835 判斷周圍座標點: 6,6 1836 >>6,6不可用於下步判斷<< 1837 判斷周圍座標點: 7,4 1838 >>7,4不可用於下步判斷<< 1839 判斷周圍座標點: 7,5 1840 >>7,5不可用於下步判斷<< 1841 判斷周圍座標點: 7,6 1842 >>7,6不可用於下步判斷<< 1843 判斷周圍座標點: 8,4 1844 判斷周圍座標點: 8,5 1845 判斷周圍座標點: 8,6 1846 >>8,6不可用於下步判斷<< 1847 minNodeF周圍點收集判斷完畢 1848 >>8,4 在開放連結串列 跳過<< 1849 >>8,5 在開放連結串列 跳過<< 1850 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 1851 開放連結串列第2個節點為: 5,1 F值為:100 --->父節點為:5,2 1852 開放連結串列第3個節點為: 6,1 F值為:104 --->父節點為:5,2 1853 開放連結串列第4個節點為: 3,2 F值為:110 --->父節點為:4,3 1854 開放連結串列第5個節點為: 3,3 F值為:96 --->父節點為:4,3 1855 開放連結串列第6個節點為: 7,2 F值為:110 --->父節點為:6,3 1856 開放連結串列第7個節點為: 7,3 F值為:96 --->父節點為:6,3 1857 開放連結串列第8個節點為: 3,1 F值為:116 --->父節點為:4,2 1858 開放連結串列第9個節點為: 7,1 F值為:116 --->父節點為:6,2 1859 開放連結串列第10個節點為: 2,3 F值為:118 --->父節點為:3,4 1860 開放連結串列第11個節點為: 2,4 F值為:105 --->父節點為:3,4 1861 開放連結串列第12個節點為: 2,5 F值為:100 --->父節點為:3,4 1862 開放連結串列第13個節點為: 8,3 F值為:118 --->父節點為:7,4 1863 開放連結串列第14個節點為: 8,4 F值為:105 --->父節點為:7,4 1864 開放連結串列第15個節點為: 8,5 F值為:100 --->父節點為:7,4 1865 =================================== 1866 從開放列表中取最小 F 的節點為:3.3 1867 ================================================= 1868 開放連結串列移除、關閉連結串列增加節點為: 3,3 F值為:96 1869 ======================================================= 1870 關閉連結串列第1個節點為: 5,2 F值為:0 1871 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 1872 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 1873 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 1874 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 1875 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 1876 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 1877 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 1878 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 1879 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 1880 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 1881 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 1882 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 1883 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 1884 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 1885 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 1886 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 1887 =========================================================== 1888 1889 1890 判斷周圍座標點: 2,2 1891 判斷周圍座標點: 2,3 1892 判斷周圍座標點: 2,4 1893 判斷周圍座標點: 3,2 1894 判斷周圍座標點: 3,3 1895 >>3,3不可用於下步判斷<< 1896 判斷周圍座標點: 3,4 1897 >>3,4不可用於下步判斷<< 1898 判斷周圍座標點: 4,2 1899 >>4,2不可用於下步判斷<< 1900 判斷周圍座標點: 4,3 1901 >>4,3不可用於下步判斷<< 1902 判斷周圍座標點: 4,4 1903 >>4,4不可用於下步判斷<< 1904 minNodeF周圍點收集判斷完畢 1905 ----------------------------G值計算開始---------------------------- 1906 檢測座標:2,2 1907 檢測座標->x:2 1908 minNodeF->x:3 1909 檢測座標->x - minNodeF->x == 1 1910 ---------------------------------- 1911 檢測座標->y:2 1912 minNodeF->y:3 1913 檢測座標->y - minNodeF->y == 1 1914 ---------------------------------- 1915 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 1916 檢測座標:2.2 -->G值 == 38 1917 ============================G值計算完畢============================ 1918 1919 檢測座標:2.2 1920 終點->x:5 1921 檢測座標->x:2 1922 (double)(終點->x - 檢測座標->x) == 3 1923 (double)(終點->x - 檢測座標->x)^2 == 9 1924 ---------------------------------- 1925 終點->y:10 1926 檢測座標->y:2 1927 (double)(終點->y - 檢測座標->y) == 8 1928 (double)(終點->y - 檢測座標->y)^2 == 64 1929 ---------------------------------- 1930 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 73 1931 ---------------------------------- 1932 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 8.544 1933 ---------------------------------- 1934 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==85.44 1935 檢測座標:2.2 H值 == 85.44 1936 ============================H值計算完畢============================ 1937 1938 檢測座標:2.2 F值 == 123 1939 ============================================================================================= 1940 1941 1942 >>2,3 在開放連結串列 跳過<< 1943 >>2,4 在開放連結串列 跳過<< 1944 >>3,2 在開放連結串列 跳過<< 1945 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 1946 開放連結串列第2個節點為: 5,1 F值為:100 --->父節點為:5,2 1947 開放連結串列第3個節點為: 6,1 F值為:104 --->父節點為:5,2 1948 開放連結串列第4個節點為: 3,2 F值為:110 --->父節點為:4,3 1949 開放連結串列第5個節點為: 7,2 F值為:110 --->父節點為:6,3 1950 開放連結串列第6個節點為: 7,3 F值為:96 --->父節點為:6,3 1951 開放連結串列第7個節點為: 3,1 F值為:116 --->父節點為:4,2 1952 開放連結串列第8個節點為: 7,1 F值為:116 --->父節點為:6,2 1953 開放連結串列第9個節點為: 2,3 F值為:118 --->父節點為:3,4 1954 開放連結串列第10個節點為: 2,4 F值為:105 --->父節點為:3,4 1955 開放連結串列第11個節點為: 2,5 F值為:100 --->父節點為:3,4 1956 開放連結串列第12個節點為: 8,3 F值為:118 --->父節點為:7,4 1957 開放連結串列第13個節點為: 8,4 F值為:105 --->父節點為:7,4 1958 開放連結串列第14個節點為: 8,5 F值為:100 --->父節點為:7,4 1959 開放連結串列第15個節點為: 2,2 F值為:123 --->父節點為:3,3 1960 =================================== 1961 從開放列表中取最小 F 的節點為:7.3 1962 ================================================= 1963 開放連結串列移除、關閉連結串列增加節點為: 7,3 F值為:96 1964 ======================================================= 1965 關閉連結串列第1個節點為: 5,2 F值為:0 1966 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 1967 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 1968 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 1969 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 1970 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 1971 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 1972 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 1973 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 1974 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 1975 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 1976 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 1977 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 1978 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 1979 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 1980 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 1981 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 1982 關閉連結串列第18個節點為: 7,3 F值為:96 --->父節點為:6,3 1983 =========================================================== 1984 1985 1986 判斷周圍座標點: 6,2 1987 >>6,2不可用於下步判斷<< 1988 判斷周圍座標點: 6,3 1989 >>6,3不可用於下步判斷<< 1990 判斷周圍座標點: 6,4 1991 >>6,4不可用於下步判斷<< 1992 判斷周圍座標點: 7,2 1993 判斷周圍座標點: 7,3 1994 >>7,3不可用於下步判斷<< 1995 判斷周圍座標點: 7,4 1996 >>7,4不可用於下步判斷<< 1997 判斷周圍座標點: 8,2 1998 判斷周圍座標點: 8,3 1999 判斷周圍座標點: 8,4 2000 minNodeF周圍點收集判斷完畢 2001 >>7,2 在開放連結串列 跳過<< 2002 ----------------------------G值計算開始---------------------------- 2003 檢測座標:8,2 2004 檢測座標->x:8 2005 minNodeF->x:7 2006 檢測座標->x - minNodeF->x == 1 2007 ---------------------------------- 2008 檢測座標->y:2 2009 minNodeF->y:3 2010 檢測座標->y - minNodeF->y == 1 2011 ---------------------------------- 2012 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 2013 檢測座標:8.2 -->G值 == 38 2014 ============================G值計算完畢============================ 2015 2016 檢測座標:8.2 2017 終點->x:5 2018 檢測座標->x:8 2019 (double)(終點->x - 檢測座標->x) == -3 2020 (double)(終點->x - 檢測座標->x)^2 == 9 2021 ---------------------------------- 2022 終點->y:10 2023 檢測座標->y:2 2024 (double)(終點->y - 檢測座標->y) == 8 2025 (double)(終點->y - 檢測座標->y)^2 == 64 2026 ---------------------------------- 2027 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 73 2028 ---------------------------------- 2029 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 8.544 2030 ---------------------------------- 2031 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==85.44 2032 檢測座標:8.2 H值 == 85.44 2033 ============================H值計算完畢============================ 2034 2035 檢測座標:8.2 F值 == 123 2036 ============================================================================================= 2037 2038 2039 >>8,3 在開放連結串列 跳過<< 2040 >>8,4 在開放連結串列 跳過<< 2041 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 2042 開放連結串列第2個節點為: 5,1 F值為:100 --->父節點為:5,2 2043 開放連結串列第3個節點為: 6,1 F值為:104 --->父節點為:5,2 2044 開放連結串列第4個節點為: 3,2 F值為:110 --->父節點為:4,3 2045 開放連結串列第5個節點為: 7,2 F值為:110 --->父節點為:6,3 2046 開放連結串列第6個節點為: 3,1 F值為:116 --->父節點為:4,2 2047 開放連結串列第7個節點為: 7,1 F值為:116 --->父節點為:6,2 2048 開放連結串列第8個節點為: 2,3 F值為:118 --->父節點為:3,4 2049 開放連結串列第9個節點為: 2,4 F值為:105 --->父節點為:3,4 2050 開放連結串列第10個節點為: 2,5 F值為:100 --->父節點為:3,4 2051 開放連結串列第11個節點為: 8,3 F值為:118 --->父節點為:7,4 2052 開放連結串列第12個節點為: 8,4 F值為:105 --->父節點為:7,4 2053 開放連結串列第13個節點為: 8,5 F值為:100 --->父節點為:7,4 2054 開放連結串列第14個節點為: 2,2 F值為:123 --->父節點為:3,3 2055 開放連結串列第15個節點為: 8,2 F值為:123 --->父節點為:7,3 2056 =================================== 2057 從開放列表中取最小 F 的節點為:5.1 2058 ================================================= 2059 開放連結串列移除、關閉連結串列增加節點為: 5,1 F值為:100 2060 ======================================================= 2061 關閉連結串列第1個節點為: 5,2 F值為:0 2062 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 2063 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 2064 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 2065 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 2066 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 2067 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 2068 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 2069 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 2070 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 2071 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 2072 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 2073 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 2074 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 2075 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 2076 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 2077 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 2078 關閉連結串列第18個節點為: 7,3 F值為:96 --->父節點為:6,3 2079 關閉連結串列第19個節點為: 5,1 F值為:100 --->父節點為:5,2 2080 =========================================================== 2081 2082 2083 判斷周圍座標點: 4,0 2084 判斷周圍座標點: 4,1 2085 判斷周圍座標點: 4,2 2086 >>4,2不可用於下步判斷<< 2087 判斷周圍座標點: 5,0 2088 判斷周圍座標點: 5,1 2089 >>5,1不可用於下步判斷<< 2090 判斷周圍座標點: 5,2 2091 >>5,2不可用於下步判斷<< 2092 判斷周圍座標點: 6,0 2093 判斷周圍座標點: 6,1 2094 判斷周圍座標點: 6,2 2095 >>6,2不可用於下步判斷<< 2096 minNodeF周圍點收集判斷完畢 2097 ----------------------------G值計算開始---------------------------- 2098 檢測座標:4,0 2099 檢測座標->x:4 2100 minNodeF->x:5 2101 檢測座標->x - minNodeF->x == 1 2102 ---------------------------------- 2103 檢測座標->y:0 2104 minNodeF->y:1 2105 檢測座標->y - minNodeF->y == 1 2106 ---------------------------------- 2107 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 2108 檢測座標:4.0 -->G值 == 24 2109 ============================G值計算完畢============================ 2110 2111 檢測座標:4.0 2112 終點->x:5 2113 檢測座標->x:4 2114 (double)(終點->x - 檢測座標->x) == 1 2115 (double)(終點->x - 檢測座標->x)^2 == 1 2116 ---------------------------------- 2117 終點->y:10 2118 檢測座標->y:0 2119 (double)(終點->y - 檢測座標->y) == 10 2120 (double)(終點->y - 檢測座標->y)^2 == 100 2121 ---------------------------------- 2122 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 101 2123 ---------------------------------- 2124 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 10.0499 2125 ---------------------------------- 2126 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==100.499 2127 檢測座標:4.0 H值 == 100.499 2128 ============================H值計算完畢============================ 2129 2130 檢測座標:4.0 F值 == 124 2131 ============================================================================================= 2132 2133 2134 >>4,1 在開放連結串列 跳過<< 2135 ----------------------------G值計算開始---------------------------- 2136 檢測座標:5,0 2137 檢測座標->x:5 2138 minNodeF->x:5 2139 檢測座標->x - minNodeF->x == 0 2140 ---------------------------------- 2141 檢測座標->y:0 2142 minNodeF->y:1 2143 檢測座標->y - minNodeF->y == 1 2144 ---------------------------------- 2145 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 2146 檢測座標:5.0 -->G值 == 20 2147 ============================G值計算完畢============================ 2148 2149 檢測座標:5.0 2150 終點->x:5 2151 檢測座標->x:5 2152 (double)(終點->x - 檢測座標->x) == 0 2153 (double)(終點->x - 檢測座標->x)^2 == 0 2154 ---------------------------------- 2155 終點->y:10 2156 檢測座標->y:0 2157 (double)(終點->y - 檢測座標->y) == 10 2158 (double)(終點->y - 檢測座標->y)^2 == 100 2159 ---------------------------------- 2160 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 100 2161 ---------------------------------- 2162 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 10 2163 ---------------------------------- 2164 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==100 2165 檢測座標:5.0 H值 == 100 2166 ============================H值計算完畢============================ 2167 2168 檢測座標:5.0 F值 == 120 2169 ============================================================================================= 2170 2171 2172 ----------------------------G值計算開始---------------------------- 2173 檢測座標:6,0 2174 檢測座標->x:6 2175 minNodeF->x:5 2176 檢測座標->x - minNodeF->x == 1 2177 ---------------------------------- 2178 檢測座標->y:0 2179 minNodeF->y:1 2180 檢測座標->y - minNodeF->y == 1 2181 ---------------------------------- 2182 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 2183 檢測座標:6.0 -->G值 == 24 2184 ============================G值計算完畢============================ 2185 2186 檢測座標:6.0 2187 終點->x:5 2188 檢測座標->x:6 2189 (double)(終點->x - 檢測座標->x) == -1 2190 (double)(終點->x - 檢測座標->x)^2 == 1 2191 ---------------------------------- 2192 終點->y:10 2193 檢測座標->y:0 2194 (double)(終點->y - 檢測座標->y) == 10 2195 (double)(終點->y - 檢測座標->y)^2 == 100 2196 ---------------------------------- 2197 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 101 2198 ---------------------------------- 2199 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 10.0499 2200 ---------------------------------- 2201 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==100.499 2202 檢測座標:6.0 H值 == 100.499 2203 ============================H值計算完畢============================ 2204 2205 檢測座標:6.0 F值 == 124 2206 ============================================================================================= 2207 2208 2209 >>6,1 在開放連結串列 跳過<< 2210 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 2211 開放連結串列第2個節點為: 6,1 F值為:104 --->父節點為:5,2 2212 開放連結串列第3個節點為: 3,2 F值為:110 --->父節點為:4,3 2213 開放連結串列第4個節點為: 7,2 F值為:110 --->父節點為:6,3 2214 開放連結串列第5個節點為: 3,1 F值為:116 --->父節點為:4,2 2215 開放連結串列第6個節點為: 7,1 F值為:116 --->父節點為:6,2 2216 開放連結串列第7個節點為: 2,3 F值為:118 --->父節點為:3,4 2217 開放連結串列第8個節點為: 2,4 F值為:105 --->父節點為:3,4 2218 開放連結串列第9個節點為: 2,5 F值為:100 --->父節點為:3,4 2219 開放連結串列第10個節點為: 8,3 F值為:118 --->父節點為:7,4 2220 開放連結串列第11個節點為: 8,4 F值為:105 --->父節點為:7,4 2221 開放連結串列第12個節點為: 8,5 F值為:100 --->父節點為:7,4 2222 開放連結串列第13個節點為: 2,2 F值為:123 --->父節點為:3,3 2223 開放連結串列第14個節點為: 8,2 F值為:123 --->父節點為:7,3 2224 開放連結串列第15個節點為: 4,0 F值為:124 --->父節點為:5,1 2225 開放連結串列第16個節點為: 5,0 F值為:120 --->父節點為:5,1 2226 開放連結串列第17個節點為: 6,0 F值為:124 --->父節點為:5,1 2227 =================================== 2228 從開放列表中取最小 F 的節點為:2.5 2229 ================================================= 2230 開放連結串列移除、關閉連結串列增加節點為: 2,5 F值為:100 2231 ======================================================= 2232 關閉連結串列第1個節點為: 5,2 F值為:0 2233 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 2234 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 2235 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 2236 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 2237 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 2238 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 2239 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 2240 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 2241 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 2242 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 2243 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 2244 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 2245 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 2246 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 2247 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 2248 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 2249 關閉連結串列第18個節點為: 7,3 F值為:96 --->父節點為:6,3 2250 關閉連結串列第19個節點為: 5,1 F值為:100 --->父節點為:5,2 2251 關閉連結串列第20個節點為: 2,5 F值為:100 --->父節點為:3,4 2252 =========================================================== 2253 2254 2255 判斷周圍座標點: 1,4 2256 判斷周圍座標點: 1,5 2257 判斷周圍座標點: 1,6 2258 判斷周圍座標點: 2,4 2259 判斷周圍座標點: 2,5 2260 >>2,5不可用於下步判斷<< 2261 判斷周圍座標點: 2,6 2262 >>2,6不可用於下步判斷<< 2263 判斷周圍座標點: 3,4 2264 >>3,4不可用於下步判斷<< 2265 判斷周圍座標點: 3,5 2266 >>3,5不可用於下步判斷<< 2267 判斷周圍座標點: 3,6 2268 >>3,6不可用於下步判斷<< 2269 minNodeF周圍點收集判斷完畢 2270 ----------------------------G值計算開始---------------------------- 2271 檢測座標:1,4 2272 檢測座標->x:1 2273 minNodeF->x:2 2274 檢測座標->x - minNodeF->x == 1 2275 ---------------------------------- 2276 檢測座標->y:4 2277 minNodeF->y:5 2278 檢測座標->y - minNodeF->y == 1 2279 ---------------------------------- 2280 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 2281 檢測座標:1.4 -->G值 == 56 2282 ============================G值計算完畢============================ 2283 2284 檢測座標:1.4 2285 終點->x:5 2286 檢測座標->x:1 2287 (double)(終點->x - 檢測座標->x) == 4 2288 (double)(終點->x - 檢測座標->x)^2 == 16 2289 ---------------------------------- 2290 終點->y:10 2291 檢測座標->y:4 2292 (double)(終點->y - 檢測座標->y) == 6 2293 (double)(終點->y - 檢測座標->y)^2 == 36 2294 ---------------------------------- 2295 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 52 2296 ---------------------------------- 2297 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 7.2111 2298 ---------------------------------- 2299 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==72.111 2300 檢測座標:1.4 H值 == 72.111 2301 ============================H值計算完畢============================ 2302 2303 檢測座標:1.4 F值 == 128 2304 ============================================================================================= 2305 2306 2307 ----------------------------G值計算開始---------------------------- 2308 檢測座標:1,5 2309 檢測座標->x:1 2310 minNodeF->x:2 2311 檢測座標->x - minNodeF->x == 1 2312 ---------------------------------- 2313 檢測座標->y:5 2314 minNodeF->y:5 2315 檢測座標->y - minNodeF->y == 0 2316 ---------------------------------- 2317 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 2318 檢測座標:1.5 -->G值 == 52 2319 ============================G值計算完畢============================ 2320 2321 檢測座標:1.5 2322 終點->x:5 2323 檢測座標->x:1 2324 (double)(終點->x - 檢測座標->x) == 4 2325 (double)(終點->x - 檢測座標->x)^2 == 16 2326 ---------------------------------- 2327 終點->y:10 2328 檢測座標->y:5 2329 (double)(終點->y - 檢測座標->y) == 5 2330 (double)(終點->y - 檢測座標->y)^2 == 25 2331 ---------------------------------- 2332 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 41 2333 ---------------------------------- 2334 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 6.40312 2335 ---------------------------------- 2336 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==64.0312 2337 檢測座標:1.5 H值 == 64.0312 2338 ============================H值計算完畢============================ 2339 2340 檢測座標:1.5 F值 == 116 2341 ============================================================================================= 2342 2343 2344 ----------------------------G值計算開始---------------------------- 2345 檢測座標:1,6 2346 檢測座標->x:1 2347 minNodeF->x:2 2348 檢測座標->x - minNodeF->x == 1 2349 ---------------------------------- 2350 檢測座標->y:6 2351 minNodeF->y:5 2352 檢測座標->y - minNodeF->y == 1 2353 ---------------------------------- 2354 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 2355 檢測座標:1.6 -->G值 == 56 2356 ============================G值計算完畢============================ 2357 2358 檢測座標:1.6 2359 終點->x:5 2360 檢測座標->x:1 2361 (double)(終點->x - 檢測座標->x) == 4 2362 (double)(終點->x - 檢測座標->x)^2 == 16 2363 ---------------------------------- 2364 終點->y:10 2365 檢測座標->y:6 2366 (double)(終點->y - 檢測座標->y) == 4 2367 (double)(終點->y - 檢測座標->y)^2 == 16 2368 ---------------------------------- 2369 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 32 2370 ---------------------------------- 2371 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 5.65685 2372 ---------------------------------- 2373 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==56.5685 2374 檢測座標:1.6 H值 == 56.5685 2375 ============================H值計算完畢============================ 2376 2377 檢測座標:1.6 F值 == 112 2378 ============================================================================================= 2379 2380 2381 >>2,4 在開放連結串列 跳過<< 2382 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 2383 開放連結串列第2個節點為: 6,1 F值為:104 --->父節點為:5,2 2384 開放連結串列第3個節點為: 3,2 F值為:110 --->父節點為:4,3 2385 開放連結串列第4個節點為: 7,2 F值為:110 --->父節點為:6,3 2386 開放連結串列第5個節點為: 3,1 F值為:116 --->父節點為:4,2 2387 開放連結串列第6個節點為: 7,1 F值為:116 --->父節點為:6,2 2388 開放連結串列第7個節點為: 2,3 F值為:118 --->父節點為:3,4 2389 開放連結串列第8個節點為: 2,4 F值為:105 --->父節點為:3,4 2390 開放連結串列第9個節點為: 8,3 F值為:118 --->父節點為:7,4 2391 開放連結串列第10個節點為: 8,4 F值為:105 --->父節點為:7,4 2392 開放連結串列第11個節點為: 8,5 F值為:100 --->父節點為:7,4 2393 開放連結串列第12個節點為: 2,2 F值為:123 --->父節點為:3,3 2394 開放連結串列第13個節點為: 8,2 F值為:123 --->父節點為:7,3 2395 開放連結串列第14個節點為: 4,0 F值為:124 --->父節點為:5,1 2396 開放連結串列第15個節點為: 5,0 F值為:120 --->父節點為:5,1 2397 開放連結串列第16個節點為: 6,0 F值為:124 --->父節點為:5,1 2398 開放連結串列第17個節點為: 1,4 F值為:128 --->父節點為:2,5 2399 開放連結串列第18個節點為: 1,5 F值為:116 --->父節點為:2,5 2400 開放連結串列第19個節點為: 1,6 F值為:112 --->父節點為:2,5 2401 =================================== 2402 從開放列表中取最小 F 的節點為:8.5 2403 ================================================= 2404 開放連結串列移除、關閉連結串列增加節點為: 8,5 F值為:100 2405 ======================================================= 2406 關閉連結串列第1個節點為: 5,2 F值為:0 2407 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 2408 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 2409 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 2410 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 2411 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 2412 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 2413 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 2414 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 2415 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 2416 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 2417 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 2418 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 2419 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 2420 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 2421 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 2422 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 2423 關閉連結串列第18個節點為: 7,3 F值為:96 --->父節點為:6,3 2424 關閉連結串列第19個節點為: 5,1 F值為:100 --->父節點為:5,2 2425 關閉連結串列第20個節點為: 2,5 F值為:100 --->父節點為:3,4 2426 關閉連結串列第21個節點為: 8,5 F值為:100 --->父節點為:7,4 2427 =========================================================== 2428 2429 2430 判斷周圍座標點: 7,4 2431 >>7,4不可用於下步判斷<< 2432 判斷周圍座標點: 7,5 2433 >>7,5不可用於下步判斷<< 2434 判斷周圍座標點: 7,6 2435 >>7,6不可用於下步判斷<< 2436 判斷周圍座標點: 8,4 2437 判斷周圍座標點: 8,5 2438 >>8,5不可用於下步判斷<< 2439 判斷周圍座標點: 8,6 2440 >>8,6不可用於下步判斷<< 2441 判斷周圍座標點: 9,4 2442 判斷周圍座標點: 9,5 2443 判斷周圍座標點: 9,6 2444 >>9,6不可用於下步判斷<< 2445 minNodeF周圍點收集判斷完畢 2446 >>8,4 在開放連結串列 跳過<< 2447 ----------------------------G值計算開始---------------------------- 2448 檢測座標:9,4 2449 檢測座標->x:9 2450 minNodeF->x:8 2451 檢測座標->x - minNodeF->x == 1 2452 ---------------------------------- 2453 檢測座標->y:4 2454 minNodeF->y:5 2455 檢測座標->y - minNodeF->y == 1 2456 ---------------------------------- 2457 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 2458 檢測座標:9.4 -->G值 == 56 2459 ============================G值計算完畢============================ 2460 2461 檢測座標:9.4 2462 終點->x:5 2463 檢測座標->x:9 2464 (double)(終點->x - 檢測座標->x) == -4 2465 (double)(終點->x - 檢測座標->x)^2 == 16 2466 ---------------------------------- 2467 終點->y:10 2468 檢測座標->y:4 2469 (double)(終點->y - 檢測座標->y) == 6 2470 (double)(終點->y - 檢測座標->y)^2 == 36 2471 ---------------------------------- 2472 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 52 2473 ---------------------------------- 2474 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 7.2111 2475 ---------------------------------- 2476 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==72.111 2477 檢測座標:9.4 H值 == 72.111 2478 ============================H值計算完畢============================ 2479 2480 檢測座標:9.4 F值 == 128 2481 ============================================================================================= 2482 2483 2484 ----------------------------G值計算開始---------------------------- 2485 檢測座標:9,5 2486 檢測座標->x:9 2487 minNodeF->x:8 2488 檢測座標->x - minNodeF->x == 1 2489 ---------------------------------- 2490 檢測座標->y:5 2491 minNodeF->y:5 2492 檢測座標->y - minNodeF->y == 0 2493 ---------------------------------- 2494 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 2495 檢測座標:9.5 -->G值 == 52 2496 ============================G值計算完畢============================ 2497 2498 檢測座標:9.5 2499 終點->x:5 2500 檢測座標->x:9 2501 (double)(終點->x - 檢測座標->x) == -4 2502 (double)(終點->x - 檢測座標->x)^2 == 16 2503 ---------------------------------- 2504 終點->y:10 2505 檢測座標->y:5 2506 (double)(終點->y - 檢測座標->y) == 5 2507 (double)(終點->y - 檢測座標->y)^2 == 25 2508 ---------------------------------- 2509 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 41 2510 ---------------------------------- 2511 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 6.40312 2512 ---------------------------------- 2513 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==64.0312 2514 檢測座標:9.5 H值 == 64.0312 2515 ============================H值計算完畢============================ 2516 2517 檢測座標:9.5 F值 == 116 2518 ============================================================================================= 2519 2520 2521 開放連結串列第1個節點為: 4,1 F值為:104 --->父節點為:5,2 2522 開放連結串列第2個節點為: 6,1 F值為:104 --->父節點為:5,2 2523 開放連結串列第3個節點為: 3,2 F值為:110 --->父節點為:4,3 2524 開放連結串列第4個節點為: 7,2 F值為:110 --->父節點為:6,3 2525 開放連結串列第5個節點為: 3,1 F值為:116 --->父節點為:4,2 2526 開放連結串列第6個節點為: 7,1 F值為:116 --->父節點為:6,2 2527 開放連結串列第7個節點為: 2,3 F值為:118 --->父節點為:3,4 2528 開放連結串列第8個節點為: 2,4 F值為:105 --->父節點為:3,4 2529 開放連結串列第9個節點為: 8,3 F值為:118 --->父節點為:7,4 2530 開放連結串列第10個節點為: 8,4 F值為:105 --->父節點為:7,4 2531 開放連結串列第11個節點為: 2,2 F值為:123 --->父節點為:3,3 2532 開放連結串列第12個節點為: 8,2 F值為:123 --->父節點為:7,3 2533 開放連結串列第13個節點為: 4,0 F值為:124 --->父節點為:5,1 2534 開放連結串列第14個節點為: 5,0 F值為:120 --->父節點為:5,1 2535 開放連結串列第15個節點為: 6,0 F值為:124 --->父節點為:5,1 2536 開放連結串列第16個節點為: 1,4 F值為:128 --->父節點為:2,5 2537 開放連結串列第17個節點為: 1,5 F值為:116 --->父節點為:2,5 2538 開放連結串列第18個節點為: 1,6 F值為:112 --->父節點為:2,5 2539 開放連結串列第19個節點為: 9,4 F值為:128 --->父節點為:8,5 2540 開放連結串列第20個節點為: 9,5 F值為:116 --->父節點為:8,5 2541 =================================== 2542 從開放列表中取最小 F 的節點為:4.1 2543 ================================================= 2544 開放連結串列移除、關閉連結串列增加節點為: 4,1 F值為:104 2545 ======================================================= 2546 關閉連結串列第1個節點為: 5,2 F值為:0 2547 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 2548 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 2549 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 2550 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 2551 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 2552 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 2553 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 2554 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 2555 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 2556 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 2557 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 2558 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 2559 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 2560 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 2561 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 2562 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 2563 關閉連結串列第18個節點為: 7,3 F值為:96 --->父節點為:6,3 2564 關閉連結串列第19個節點為: 5,1 F值為:100 --->父節點為:5,2 2565 關閉連結串列第20個節點為: 2,5 F值為:100 --->父節點為:3,4 2566 關閉連結串列第21個節點為: 8,5 F值為:100 --->父節點為:7,4 2567 關閉連結串列第22個節點為: 4,1 F值為:104 --->父節點為:5,2 2568 =========================================================== 2569 2570 2571 判斷周圍座標點: 3,0 2572 判斷周圍座標點: 3,1 2573 判斷周圍座標點: 3,2 2574 判斷周圍座標點: 4,0 2575 判斷周圍座標點: 4,1 2576 >>4,1不可用於下步判斷<< 2577 判斷周圍座標點: 4,2 2578 >>4,2不可用於下步判斷<< 2579 判斷周圍座標點: 5,0 2580 判斷周圍座標點: 5,1 2581 >>5,1不可用於下步判斷<< 2582 判斷周圍座標點: 5,2 2583 >>5,2不可用於下步判斷<< 2584 minNodeF周圍點收集判斷完畢 2585 ----------------------------G值計算開始---------------------------- 2586 檢測座標:3,0 2587 檢測座標->x:3 2588 minNodeF->x:4 2589 檢測座標->x - minNodeF->x == 1 2590 ---------------------------------- 2591 檢測座標->y:0 2592 minNodeF->y:1 2593 檢測座標->y - minNodeF->y == 1 2594 ---------------------------------- 2595 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 2596 檢測座標:3.0 -->G值 == 28 2597 ============================G值計算完畢============================ 2598 2599 檢測座標:3.0 2600 終點->x:5 2601 檢測座標->x:3 2602 (double)(終點->x - 檢測座標->x) == 2 2603 (double)(終點->x - 檢測座標->x)^2 == 4 2604 ---------------------------------- 2605 終點->y:10 2606 檢測座標->y:0 2607 (double)(終點->y - 檢測座標->y) == 10 2608 (double)(終點->y - 檢測座標->y)^2 == 100 2609 ---------------------------------- 2610 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 104 2611 ---------------------------------- 2612 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 10.198 2613 ---------------------------------- 2614 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==101.98 2615 檢測座標:3.0 H值 == 101.98 2616 ============================H值計算完畢============================ 2617 2618 檢測座標:3.0 F值 == 129 2619 ============================================================================================= 2620 2621 2622 >>3,1 在開放連結串列 跳過<< 2623 >>3,2 在開放連結串列 跳過<< 2624 >>4,0 在開放連結串列 跳過<< 2625 >>5,0 在開放連結串列 跳過<< 2626 開放連結串列第1個節點為: 6,1 F值為:104 --->父節點為:5,2 2627 開放連結串列第2個節點為: 3,2 F值為:110 --->父節點為:4,3 2628 開放連結串列第3個節點為: 7,2 F值為:110 --->父節點為:6,3 2629 開放連結串列第4個節點為: 3,1 F值為:116 --->父節點為:4,2 2630 開放連結串列第5個節點為: 7,1 F值為:116 --->父節點為:6,2 2631 開放連結串列第6個節點為: 2,3 F值為:118 --->父節點為:3,4 2632 開放連結串列第7個節點為: 2,4 F值為:105 --->父節點為:3,4 2633 開放連結串列第8個節點為: 8,3 F值為:118 --->父節點為:7,4 2634 開放連結串列第9個節點為: 8,4 F值為:105 --->父節點為:7,4 2635 開放連結串列第10個節點為: 2,2 F值為:123 --->父節點為:3,3 2636 開放連結串列第11個節點為: 8,2 F值為:123 --->父節點為:7,3 2637 開放連結串列第12個節點為: 4,0 F值為:124 --->父節點為:5,1 2638 開放連結串列第13個節點為: 5,0 F值為:120 --->父節點為:5,1 2639 開放連結串列第14個節點為: 6,0 F值為:124 --->父節點為:5,1 2640 開放連結串列第15個節點為: 1,4 F值為:128 --->父節點為:2,5 2641 開放連結串列第16個節點為: 1,5 F值為:116 --->父節點為:2,5 2642 開放連結串列第17個節點為: 1,6 F值為:112 --->父節點為:2,5 2643 開放連結串列第18個節點為: 9,4 F值為:128 --->父節點為:8,5 2644 開放連結串列第19個節點為: 9,5 F值為:116 --->父節點為:8,5 2645 開放連結串列第20個節點為: 3,0 F值為:129 --->父節點為:4,1 2646 =================================== 2647 從開放列表中取最小 F 的節點為:6.1 2648 ================================================= 2649 開放連結串列移除、關閉連結串列增加節點為: 6,1 F值為:104 2650 ======================================================= 2651 關閉連結串列第1個節點為: 5,2 F值為:0 2652 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 2653 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 2654 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 2655 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 2656 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 2657 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 2658 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 2659 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 2660 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 2661 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 2662 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 2663 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 2664 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 2665 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 2666 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 2667 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 2668 關閉連結串列第18個節點為: 7,3 F值為:96 --->父節點為:6,3 2669 關閉連結串列第19個節點為: 5,1 F值為:100 --->父節點為:5,2 2670 關閉連結串列第20個節點為: 2,5 F值為:100 --->父節點為:3,4 2671 關閉連結串列第21個節點為: 8,5 F值為:100 --->父節點為:7,4 2672 關閉連結串列第22個節點為: 4,1 F值為:104 --->父節點為:5,2 2673 關閉連結串列第23個節點為: 6,1 F值為:104 --->父節點為:5,2 2674 =========================================================== 2675 2676 2677 判斷周圍座標點: 5,0 2678 判斷周圍座標點: 5,1 2679 >>5,1不可用於下步判斷<< 2680 判斷周圍座標點: 5,2 2681 >>5,2不可用於下步判斷<< 2682 判斷周圍座標點: 6,0 2683 判斷周圍座標點: 6,1 2684 >>6,1不可用於下步判斷<< 2685 判斷周圍座標點: 6,2 2686 >>6,2不可用於下步判斷<< 2687 判斷周圍座標點: 7,0 2688 判斷周圍座標點: 7,1 2689 判斷周圍座標點: 7,2 2690 minNodeF周圍點收集判斷完畢 2691 >>5,0 在開放連結串列 跳過<< 2692 >>6,0 在開放連結串列 跳過<< 2693 ----------------------------G值計算開始---------------------------- 2694 檢測座標:7,0 2695 檢測座標->x:7 2696 minNodeF->x:6 2697 檢測座標->x - minNodeF->x == 1 2698 ---------------------------------- 2699 檢測座標->y:0 2700 minNodeF->y:1 2701 檢測座標->y - minNodeF->y == 1 2702 ---------------------------------- 2703 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 2704 檢測座標:7.0 -->G值 == 28 2705 ============================G值計算完畢============================ 2706 2707 檢測座標:7.0 2708 終點->x:5 2709 檢測座標->x:7 2710 (double)(終點->x - 檢測座標->x) == -2 2711 (double)(終點->x - 檢測座標->x)^2 == 4 2712 ---------------------------------- 2713 終點->y:10 2714 檢測座標->y:0 2715 (double)(終點->y - 檢測座標->y) == 10 2716 (double)(終點->y - 檢測座標->y)^2 == 100 2717 ---------------------------------- 2718 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 104 2719 ---------------------------------- 2720 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 10.198 2721 ---------------------------------- 2722 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==101.98 2723 檢測座標:7.0 H值 == 101.98 2724 ============================H值計算完畢============================ 2725 2726 檢測座標:7.0 F值 == 129 2727 ============================================================================================= 2728 2729 2730 >>7,1 在開放連結串列 跳過<< 2731 >>7,2 在開放連結串列 跳過<< 2732 開放連結串列第1個節點為: 3,2 F值為:110 --->父節點為:4,3 2733 開放連結串列第2個節點為: 7,2 F值為:110 --->父節點為:6,3 2734 開放連結串列第3個節點為: 3,1 F值為:116 --->父節點為:4,2 2735 開放連結串列第4個節點為: 7,1 F值為:116 --->父節點為:6,2 2736 開放連結串列第5個節點為: 2,3 F值為:118 --->父節點為:3,4 2737 開放連結串列第6個節點為: 2,4 F值為:105 --->父節點為:3,4 2738 開放連結串列第7個節點為: 8,3 F值為:118 --->父節點為:7,4 2739 開放連結串列第8個節點為: 8,4 F值為:105 --->父節點為:7,4 2740 開放連結串列第9個節點為: 2,2 F值為:123 --->父節點為:3,3 2741 開放連結串列第10個節點為: 8,2 F值為:123 --->父節點為:7,3 2742 開放連結串列第11個節點為: 4,0 F值為:124 --->父節點為:5,1 2743 開放連結串列第12個節點為: 5,0 F值為:120 --->父節點為:5,1 2744 開放連結串列第13個節點為: 6,0 F值為:124 --->父節點為:5,1 2745 開放連結串列第14個節點為: 1,4 F值為:128 --->父節點為:2,5 2746 開放連結串列第15個節點為: 1,5 F值為:116 --->父節點為:2,5 2747 開放連結串列第16個節點為: 1,6 F值為:112 --->父節點為:2,5 2748 開放連結串列第17個節點為: 9,4 F值為:128 --->父節點為:8,5 2749 開放連結串列第18個節點為: 9,5 F值為:116 --->父節點為:8,5 2750 開放連結串列第19個節點為: 3,0 F值為:129 --->父節點為:4,1 2751 開放連結串列第20個節點為: 7,0 F值為:129 --->父節點為:6,1 2752 =================================== 2753 從開放列表中取最小 F 的節點為:2.4 2754 ================================================= 2755 開放連結串列移除、關閉連結串列增加節點為: 2,4 F值為:105 2756 ======================================================= 2757 關閉連結串列第1個節點為: 5,2 F值為:0 2758 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 2759 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 2760 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 2761 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 2762 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 2763 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 2764 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 2765 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 2766 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 2767 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 2768 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 2769 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 2770 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 2771 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 2772 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 2773 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 2774 關閉連結串列第18個節點為: 7,3 F值為:96 --->父節點為:6,3 2775 關閉連結串列第19個節點為: 5,1 F值為:100 --->父節點為:5,2 2776 關閉連結串列第20個節點為: 2,5 F值為:100 --->父節點為:3,4 2777 關閉連結串列第21個節點為: 8,5 F值為:100 --->父節點為:7,4 2778 關閉連結串列第22個節點為: 4,1 F值為:104 --->父節點為:5,2 2779 關閉連結串列第23個節點為: 6,1 F值為:104 --->父節點為:5,2 2780 關閉連結串列第24個節點為: 2,4 F值為:105 --->父節點為:3,4 2781 =========================================================== 2782 2783 2784 判斷周圍座標點: 1,3 2785 判斷周圍座標點: 1,4 2786 判斷周圍座標點: 1,5 2787 判斷周圍座標點: 2,3 2788 判斷周圍座標點: 2,4 2789 >>2,4不可用於下步判斷<< 2790 判斷周圍座標點: 2,5 2791 >>2,5不可用於下步判斷<< 2792 判斷周圍座標點: 3,3 2793 >>3,3不可用於下步判斷<< 2794 判斷周圍座標點: 3,4 2795 >>3,4不可用於下步判斷<< 2796 判斷周圍座標點: 3,5 2797 >>3,5不可用於下步判斷<< 2798 minNodeF周圍點收集判斷完畢 2799 ----------------------------G值計算開始---------------------------- 2800 檢測座標:1,3 2801 檢測座標->x:1 2802 minNodeF->x:2 2803 檢測座標->x - minNodeF->x == 1 2804 ---------------------------------- 2805 檢測座標->y:3 2806 minNodeF->y:4 2807 檢測座標->y - minNodeF->y == 1 2808 ---------------------------------- 2809 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 2810 檢測座標:1.3 -->G值 == 52 2811 ============================G值計算完畢============================ 2812 2813 檢測座標:1.3 2814 終點->x:5 2815 檢測座標->x:1 2816 (double)(終點->x - 檢測座標->x) == 4 2817 (double)(終點->x - 檢測座標->x)^2 == 16 2818 ---------------------------------- 2819 終點->y:10 2820 檢測座標->y:3 2821 (double)(終點->y - 檢測座標->y) == 7 2822 (double)(終點->y - 檢測座標->y)^2 == 49 2823 ---------------------------------- 2824 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 65 2825 ---------------------------------- 2826 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 8.06226 2827 ---------------------------------- 2828 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==80.6226 2829 檢測座標:1.3 H值 == 80.6226 2830 ============================H值計算完畢============================ 2831 2832 檢測座標:1.3 F值 == 132 2833 ============================================================================================= 2834 2835 2836 >>1,4 在開放連結串列 跳過<< 2837 >>1,5 在開放連結串列 跳過<< 2838 >>2,3 在開放連結串列 跳過<< 2839 開放連結串列第1個節點為: 3,2 F值為:110 --->父節點為:4,3 2840 開放連結串列第2個節點為: 7,2 F值為:110 --->父節點為:6,3 2841 開放連結串列第3個節點為: 3,1 F值為:116 --->父節點為:4,2 2842 開放連結串列第4個節點為: 7,1 F值為:116 --->父節點為:6,2 2843 開放連結串列第5個節點為: 2,3 F值為:118 --->父節點為:3,4 2844 開放連結串列第6個節點為: 8,3 F值為:118 --->父節點為:7,4 2845 開放連結串列第7個節點為: 8,4 F值為:105 --->父節點為:7,4 2846 開放連結串列第8個節點為: 2,2 F值為:123 --->父節點為:3,3 2847 開放連結串列第9個節點為: 8,2 F值為:123 --->父節點為:7,3 2848 開放連結串列第10個節點為: 4,0 F值為:124 --->父節點為:5,1 2849 開放連結串列第11個節點為: 5,0 F值為:120 --->父節點為:5,1 2850 開放連結串列第12個節點為: 6,0 F值為:124 --->父節點為:5,1 2851 開放連結串列第13個節點為: 1,4 F值為:128 --->父節點為:2,5 2852 開放連結串列第14個節點為: 1,5 F值為:116 --->父節點為:2,5 2853 開放連結串列第15個節點為: 1,6 F值為:112 --->父節點為:2,5 2854 開放連結串列第16個節點為: 9,4 F值為:128 --->父節點為:8,5 2855 開放連結串列第17個節點為: 9,5 F值為:116 --->父節點為:8,5 2856 開放連結串列第18個節點為: 3,0 F值為:129 --->父節點為:4,1 2857 開放連結串列第19個節點為: 7,0 F值為:129 --->父節點為:6,1 2858 開放連結串列第20個節點為: 1,3 F值為:132 --->父節點為:2,4 2859 =================================== 2860 從開放列表中取最小 F 的節點為:8.4 2861 ================================================= 2862 開放連結串列移除、關閉連結串列增加節點為: 8,4 F值為:105 2863 ======================================================= 2864 關閉連結串列第1個節點為: 5,2 F值為:0 2865 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 2866 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 2867 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 2868 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 2869 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 2870 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 2871 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 2872 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 2873 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 2874 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 2875 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 2876 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 2877 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 2878 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 2879 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 2880 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 2881 關閉連結串列第18個節點為: 7,3 F值為:96 --->父節點為:6,3 2882 關閉連結串列第19個節點為: 5,1 F值為:100 --->父節點為:5,2 2883 關閉連結串列第20個節點為: 2,5 F值為:100 --->父節點為:3,4 2884 關閉連結串列第21個節點為: 8,5 F值為:100 --->父節點為:7,4 2885 關閉連結串列第22個節點為: 4,1 F值為:104 --->父節點為:5,2 2886 關閉連結串列第23個節點為: 6,1 F值為:104 --->父節點為:5,2 2887 關閉連結串列第24個節點為: 2,4 F值為:105 --->父節點為:3,4 2888 關閉連結串列第25個節點為: 8,4 F值為:105 --->父節點為:7,4 2889 =========================================================== 2890 2891 2892 判斷周圍座標點: 7,3 2893 >>7,3不可用於下步判斷<< 2894 判斷周圍座標點: 7,4 2895 >>7,4不可用於下步判斷<< 2896 判斷周圍座標點: 7,5 2897 >>7,5不可用於下步判斷<< 2898 判斷周圍座標點: 8,3 2899 判斷周圍座標點: 8,4 2900 >>8,4不可用於下步判斷<< 2901 判斷周圍座標點: 8,5 2902 >>8,5不可用於下步判斷<< 2903 判斷周圍座標點: 9,3 2904 判斷周圍座標點: 9,4 2905 判斷周圍座標點: 9,5 2906 minNodeF周圍點收集判斷完畢 2907 >>8,3 在開放連結串列 跳過<< 2908 ----------------------------G值計算開始---------------------------- 2909 檢測座標:9,3 2910 檢測座標->x:9 2911 minNodeF->x:8 2912 檢測座標->x - minNodeF->x == 1 2913 ---------------------------------- 2914 檢測座標->y:3 2915 minNodeF->y:4 2916 檢測座標->y - minNodeF->y == 1 2917 ---------------------------------- 2918 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 2919 檢測座標:9.3 -->G值 == 52 2920 ============================G值計算完畢============================ 2921 2922 檢測座標:9.3 2923 終點->x:5 2924 檢測座標->x:9 2925 (double)(終點->x - 檢測座標->x) == -4 2926 (double)(終點->x - 檢測座標->x)^2 == 16 2927 ---------------------------------- 2928 終點->y:10 2929 檢測座標->y:3 2930 (double)(終點->y - 檢測座標->y) == 7 2931 (double)(終點->y - 檢測座標->y)^2 == 49 2932 ---------------------------------- 2933 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 65 2934 ---------------------------------- 2935 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 8.06226 2936 ---------------------------------- 2937 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==80.6226 2938 檢測座標:9.3 H值 == 80.6226 2939 ============================H值計算完畢============================ 2940 2941 檢測座標:9.3 F值 == 132 2942 ============================================================================================= 2943 2944 2945 >>9,4 在開放連結串列 跳過<< 2946 >>9,5 在開放連結串列 跳過<< 2947 開放連結串列第1個節點為: 3,2 F值為:110 --->父節點為:4,3 2948 開放連結串列第2個節點為: 7,2 F值為:110 --->父節點為:6,3 2949 開放連結串列第3個節點為: 3,1 F值為:116 --->父節點為:4,2 2950 開放連結串列第4個節點為: 7,1 F值為:116 --->父節點為:6,2 2951 開放連結串列第5個節點為: 2,3 F值為:118 --->父節點為:3,4 2952 開放連結串列第6個節點為: 8,3 F值為:118 --->父節點為:7,4 2953 開放連結串列第7個節點為: 2,2 F值為:123 --->父節點為:3,3 2954 開放連結串列第8個節點為: 8,2 F值為:123 --->父節點為:7,3 2955 開放連結串列第9個節點為: 4,0 F值為:124 --->父節點為:5,1 2956 開放連結串列第10個節點為: 5,0 F值為:120 --->父節點為:5,1 2957 開放連結串列第11個節點為: 6,0 F值為:124 --->父節點為:5,1 2958 開放連結串列第12個節點為: 1,4 F值為:128 --->父節點為:2,5 2959 開放連結串列第13個節點為: 1,5 F值為:116 --->父節點為:2,5 2960 開放連結串列第14個節點為: 1,6 F值為:112 --->父節點為:2,5 2961 開放連結串列第15個節點為: 9,4 F值為:128 --->父節點為:8,5 2962 開放連結串列第16個節點為: 9,5 F值為:116 --->父節點為:8,5 2963 開放連結串列第17個節點為: 3,0 F值為:129 --->父節點為:4,1 2964 開放連結串列第18個節點為: 7,0 F值為:129 --->父節點為:6,1 2965 開放連結串列第19個節點為: 1,3 F值為:132 --->父節點為:2,4 2966 開放連結串列第20個節點為: 9,3 F值為:132 --->父節點為:8,4 2967 =================================== 2968 從開放列表中取最小 F 的節點為:3.2 2969 ================================================= 2970 開放連結串列移除、關閉連結串列增加節點為: 3,2 F值為:110 2971 ======================================================= 2972 關閉連結串列第1個節點為: 5,2 F值為:0 2973 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 2974 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 2975 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 2976 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 2977 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 2978 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 2979 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 2980 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 2981 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 2982 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 2983 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 2984 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 2985 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 2986 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 2987 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 2988 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 2989 關閉連結串列第18個節點為: 7,3 F值為:96 --->父節點為:6,3 2990 關閉連結串列第19個節點為: 5,1 F值為:100 --->父節點為:5,2 2991 關閉連結串列第20個節點為: 2,5 F值為:100 --->父節點為:3,4 2992 關閉連結串列第21個節點為: 8,5 F值為:100 --->父節點為:7,4 2993 關閉連結串列第22個節點為: 4,1 F值為:104 --->父節點為:5,2 2994 關閉連結串列第23個節點為: 6,1 F值為:104 --->父節點為:5,2 2995 關閉連結串列第24個節點為: 2,4 F值為:105 --->父節點為:3,4 2996 關閉連結串列第25個節點為: 8,4 F值為:105 --->父節點為:7,4 2997 關閉連結串列第26個節點為: 3,2 F值為:110 --->父節點為:4,3 2998 =========================================================== 2999 3000 3001 判斷周圍座標點: 2,1 3002 判斷周圍座標點: 2,2 3003 判斷周圍座標點: 2,3 3004 判斷周圍座標點: 3,1 3005 判斷周圍座標點: 3,2 3006 >>3,2不可用於下步判斷<< 3007 判斷周圍座標點: 3,3 3008 >>3,3不可用於下步判斷<< 3009 判斷周圍座標點: 4,1 3010 >>4,1不可用於下步判斷<< 3011 判斷周圍座標點: 4,2 3012 >>4,2不可用於下步判斷<< 3013 判斷周圍座標點: 4,3 3014 >>4,3不可用於下步判斷<< 3015 minNodeF周圍點收集判斷完畢 3016 ----------------------------G值計算開始---------------------------- 3017 檢測座標:2,1 3018 檢測座標->x:2 3019 minNodeF->x:3 3020 檢測座標->x - minNodeF->x == 1 3021 ---------------------------------- 3022 檢測座標->y:1 3023 minNodeF->y:2 3024 檢測座標->y - minNodeF->y == 1 3025 ---------------------------------- 3026 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 3027 檢測座標:2.1 -->G值 == 42 3028 ============================G值計算完畢============================ 3029 3030 檢測座標:2.1 3031 終點->x:5 3032 檢測座標->x:2 3033 (double)(終點->x - 檢測座標->x) == 3 3034 (double)(終點->x - 檢測座標->x)^2 == 9 3035 ---------------------------------- 3036 終點->y:10 3037 檢測座標->y:1 3038 (double)(終點->y - 檢測座標->y) == 9 3039 (double)(終點->y - 檢測座標->y)^2 == 81 3040 ---------------------------------- 3041 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 90 3042 ---------------------------------- 3043 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 9.48683 3044 ---------------------------------- 3045 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==94.8683 3046 檢測座標:2.1 H值 == 94.8683 3047 ============================H值計算完畢============================ 3048 3049 檢測座標:2.1 F值 == 136 3050 ============================================================================================= 3051 3052 3053 >>2,2 在開放連結串列 跳過<< 3054 >>2,3 在開放連結串列 跳過<< 3055 >>3,1 在開放連結串列 跳過<< 3056 開放連結串列第1個節點為: 7,2 F值為:110 --->父節點為:6,3 3057 開放連結串列第2個節點為: 3,1 F值為:116 --->父節點為:4,2 3058 開放連結串列第3個節點為: 7,1 F值為:116 --->父節點為:6,2 3059 開放連結串列第4個節點為: 2,3 F值為:118 --->父節點為:3,4 3060 開放連結串列第5個節點為: 8,3 F值為:118 --->父節點為:7,4 3061 開放連結串列第6個節點為: 2,2 F值為:123 --->父節點為:3,3 3062 開放連結串列第7個節點為: 8,2 F值為:123 --->父節點為:7,3 3063 開放連結串列第8個節點為: 4,0 F值為:124 --->父節點為:5,1 3064 開放連結串列第9個節點為: 5,0 F值為:120 --->父節點為:5,1 3065 開放連結串列第10個節點為: 6,0 F值為:124 --->父節點為:5,1 3066 開放連結串列第11個節點為: 1,4 F值為:128 --->父節點為:2,5 3067 開放連結串列第12個節點為: 1,5 F值為:116 --->父節點為:2,5 3068 開放連結串列第13個節點為: 1,6 F值為:112 --->父節點為:2,5 3069 開放連結串列第14個節點為: 9,4 F值為:128 --->父節點為:8,5 3070 開放連結串列第15個節點為: 9,5 F值為:116 --->父節點為:8,5 3071 開放連結串列第16個節點為: 3,0 F值為:129 --->父節點為:4,1 3072 開放連結串列第17個節點為: 7,0 F值為:129 --->父節點為:6,1 3073 開放連結串列第18個節點為: 1,3 F值為:132 --->父節點為:2,4 3074 開放連結串列第19個節點為: 9,3 F值為:132 --->父節點為:8,4 3075 開放連結串列第20個節點為: 2,1 F值為:136 --->父節點為:3,2 3076 =================================== 3077 從開放列表中取最小 F 的節點為:7.2 3078 ================================================= 3079 開放連結串列移除、關閉連結串列增加節點為: 7,2 F值為:110 3080 ======================================================= 3081 關閉連結串列第1個節點為: 5,2 F值為:0 3082 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 3083 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 3084 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 3085 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 3086 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 3087 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 3088 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 3089 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 3090 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 3091 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 3092 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 3093 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 3094 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 3095 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 3096 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 3097 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 3098 關閉連結串列第18個節點為: 7,3 F值為:96 --->父節點為:6,3 3099 關閉連結串列第19個節點為: 5,1 F值為:100 --->父節點為:5,2 3100 關閉連結串列第20個節點為: 2,5 F值為:100 --->父節點為:3,4 3101 關閉連結串列第21個節點為: 8,5 F值為:100 --->父節點為:7,4 3102 關閉連結串列第22個節點為: 4,1 F值為:104 --->父節點為:5,2 3103 關閉連結串列第23個節點為: 6,1 F值為:104 --->父節點為:5,2 3104 關閉連結串列第24個節點為: 2,4 F值為:105 --->父節點為:3,4 3105 關閉連結串列第25個節點為: 8,4 F值為:105 --->父節點為:7,4 3106 關閉連結串列第26個節點為: 3,2 F值為:110 --->父節點為:4,3 3107 關閉連結串列第27個節點為: 7,2 F值為:110 --->父節點為:6,3 3108 =========================================================== 3109 3110 3111 判斷周圍座標點: 6,1 3112 >>6,1不可用於下步判斷<< 3113 判斷周圍座標點: 6,2 3114 >>6,2不可用於下步判斷<< 3115 判斷周圍座標點: 6,3 3116 >>6,3不可用於下步判斷<< 3117 判斷周圍座標點: 7,1 3118 判斷周圍座標點: 7,2 3119 >>7,2不可用於下步判斷<< 3120 判斷周圍座標點: 7,3 3121 >>7,3不可用於下步判斷<< 3122 判斷周圍座標點: 8,1 3123 判斷周圍座標點: 8,2 3124 判斷周圍座標點: 8,3 3125 minNodeF周圍點收集判斷完畢 3126 >>7,1 在開放連結串列 跳過<< 3127 ----------------------------G值計算開始---------------------------- 3128 檢測座標:8,1 3129 檢測座標->x:8 3130 minNodeF->x:7 3131 檢測座標->x - minNodeF->x == 1 3132 ---------------------------------- 3133 檢測座標->y:1 3134 minNodeF->y:2 3135 檢測座標->y - minNodeF->y == 1 3136 ---------------------------------- 3137 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 3138 檢測座標:8.1 -->G值 == 42 3139 ============================G值計算完畢============================ 3140 3141 檢測座標:8.1 3142 終點->x:5 3143 檢測座標->x:8 3144 (double)(終點->x - 檢測座標->x) == -3 3145 (double)(終點->x - 檢測座標->x)^2 == 9 3146 ---------------------------------- 3147 終點->y:10 3148 檢測座標->y:1 3149 (double)(終點->y - 檢測座標->y) == 9 3150 (double)(終點->y - 檢測座標->y)^2 == 81 3151 ---------------------------------- 3152 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 90 3153 ---------------------------------- 3154 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 9.48683 3155 ---------------------------------- 3156 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==94.8683 3157 檢測座標:8.1 H值 == 94.8683 3158 ============================H值計算完畢============================ 3159 3160 檢測座標:8.1 F值 == 136 3161 ============================================================================================= 3162 3163 3164 >>8,2 在開放連結串列 跳過<< 3165 >>8,3 在開放連結串列 跳過<< 3166 開放連結串列第1個節點為: 3,1 F值為:116 --->父節點為:4,2 3167 開放連結串列第2個節點為: 7,1 F值為:116 --->父節點為:6,2 3168 開放連結串列第3個節點為: 2,3 F值為:118 --->父節點為:3,4 3169 開放連結串列第4個節點為: 8,3 F值為:118 --->父節點為:7,4 3170 開放連結串列第5個節點為: 2,2 F值為:123 --->父節點為:3,3 3171 開放連結串列第6個節點為: 8,2 F值為:123 --->父節點為:7,3 3172 開放連結串列第7個節點為: 4,0 F值為:124 --->父節點為:5,1 3173 開放連結串列第8個節點為: 5,0 F值為:120 --->父節點為:5,1 3174 開放連結串列第9個節點為: 6,0 F值為:124 --->父節點為:5,1 3175 開放連結串列第10個節點為: 1,4 F值為:128 --->父節點為:2,5 3176 開放連結串列第11個節點為: 1,5 F值為:116 --->父節點為:2,5 3177 開放連結串列第12個節點為: 1,6 F值為:112 --->父節點為:2,5 3178 開放連結串列第13個節點為: 9,4 F值為:128 --->父節點為:8,5 3179 開放連結串列第14個節點為: 9,5 F值為:116 --->父節點為:8,5 3180 開放連結串列第15個節點為: 3,0 F值為:129 --->父節點為:4,1 3181 開放連結串列第16個節點為: 7,0 F值為:129 --->父節點為:6,1 3182 開放連結串列第17個節點為: 1,3 F值為:132 --->父節點為:2,4 3183 開放連結串列第18個節點為: 9,3 F值為:132 --->父節點為:8,4 3184 開放連結串列第19個節點為: 2,1 F值為:136 --->父節點為:3,2 3185 開放連結串列第20個節點為: 8,1 F值為:136 --->父節點為:7,2 3186 =================================== 3187 從開放列表中取最小 F 的節點為:1.6 3188 ================================================= 3189 開放連結串列移除、關閉連結串列增加節點為: 1,6 F值為:112 3190 ======================================================= 3191 關閉連結串列第1個節點為: 5,2 F值為:0 3192 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 3193 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 3194 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 3195 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 3196 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 3197 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 3198 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 3199 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 3200 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 3201 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 3202 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 3203 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 3204 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 3205 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 3206 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 3207 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 3208 關閉連結串列第18個節點為: 7,3 F值為:96 --->父節點為:6,3 3209 關閉連結串列第19個節點為: 5,1 F值為:100 --->父節點為:5,2 3210 關閉連結串列第20個節點為: 2,5 F值為:100 --->父節點為:3,4 3211 關閉連結串列第21個節點為: 8,5 F值為:100 --->父節點為:7,4 3212 關閉連結串列第22個節點為: 4,1 F值為:104 --->父節點為:5,2 3213 關閉連結串列第23個節點為: 6,1 F值為:104 --->父節點為:5,2 3214 關閉連結串列第24個節點為: 2,4 F值為:105 --->父節點為:3,4 3215 關閉連結串列第25個節點為: 8,4 F值為:105 --->父節點為:7,4 3216 關閉連結串列第26個節點為: 3,2 F值為:110 --->父節點為:4,3 3217 關閉連結串列第27個節點為: 7,2 F值為:110 --->父節點為:6,3 3218 關閉連結串列第28個節點為: 1,6 F值為:112 --->父節點為:2,5 3219 =========================================================== 3220 3221 3222 判斷周圍座標點: 0,5 3223 判斷周圍座標點: 0,6 3224 判斷周圍座標點: 0,7 3225 判斷周圍座標點: 1,5 3226 判斷周圍座標點: 1,6 3227 >>1,6不可用於下步判斷<< 3228 判斷周圍座標點: 1,7 3229 判斷周圍座標點: 2,5 3230 >>2,5不可用於下步判斷<< 3231 判斷周圍座標點: 2,6 3232 >>2,6不可用於下步判斷<< 3233 判斷周圍座標點: 2,7 3234 minNodeF周圍點收集判斷完畢 3235 ----------------------------G值計算開始---------------------------- 3236 檢測座標:0,5 3237 檢測座標->x:0 3238 minNodeF->x:1 3239 檢測座標->x - minNodeF->x == 1 3240 ---------------------------------- 3241 檢測座標->y:5 3242 minNodeF->y:6 3243 檢測座標->y - minNodeF->y == 1 3244 ---------------------------------- 3245 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 3246 檢測座標:0.5 -->G值 == 70 3247 ============================G值計算完畢============================ 3248 3249 檢測座標:0.5 3250 終點->x:5 3251 檢測座標->x:0 3252 (double)(終點->x - 檢測座標->x) == 5 3253 (double)(終點->x - 檢測座標->x)^2 == 25 3254 ---------------------------------- 3255 終點->y:10 3256 檢測座標->y:5 3257 (double)(終點->y - 檢測座標->y) == 5 3258 (double)(終點->y - 檢測座標->y)^2 == 25 3259 ---------------------------------- 3260 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 50 3261 ---------------------------------- 3262 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 7.07107 3263 ---------------------------------- 3264 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==70.7107 3265 檢測座標:0.5 H值 == 70.7107 3266 ============================H值計算完畢============================ 3267 3268 檢測座標:0.5 F值 == 140 3269 ============================================================================================= 3270 3271 3272 ----------------------------G值計算開始---------------------------- 3273 檢測座標:0,6 3274 檢測座標->x:0 3275 minNodeF->x:1 3276 檢測座標->x - minNodeF->x == 1 3277 ---------------------------------- 3278 檢測座標->y:6 3279 minNodeF->y:6 3280 檢測座標->y - minNodeF->y == 0 3281 ---------------------------------- 3282 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 3283 檢測座標:0.6 -->G值 == 66 3284 ============================G值計算完畢============================ 3285 3286 檢測座標:0.6 3287 終點->x:5 3288 檢測座標->x:0 3289 (double)(終點->x - 檢測座標->x) == 5 3290 (double)(終點->x - 檢測座標->x)^2 == 25 3291 ---------------------------------- 3292 終點->y:10 3293 檢測座標->y:6 3294 (double)(終點->y - 檢測座標->y) == 4 3295 (double)(終點->y - 檢測座標->y)^2 == 16 3296 ---------------------------------- 3297 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 41 3298 ---------------------------------- 3299 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 6.40312 3300 ---------------------------------- 3301 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==64.0312 3302 檢測座標:0.6 H值 == 64.0312 3303 ============================H值計算完畢============================ 3304 3305 檢測座標:0.6 F值 == 130 3306 ============================================================================================= 3307 3308 3309 ----------------------------G值計算開始---------------------------- 3310 檢測座標:0,7 3311 檢測座標->x:0 3312 minNodeF->x:1 3313 檢測座標->x - minNodeF->x == 1 3314 ---------------------------------- 3315 檢測座標->y:7 3316 minNodeF->y:6 3317 檢測座標->y - minNodeF->y == 1 3318 ---------------------------------- 3319 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 3320 檢測座標:0.7 -->G值 == 70 3321 ============================G值計算完畢============================ 3322 3323 檢測座標:0.7 3324 終點->x:5 3325 檢測座標->x:0 3326 (double)(終點->x - 檢測座標->x) == 5 3327 (double)(終點->x - 檢測座標->x)^2 == 25 3328 ---------------------------------- 3329 終點->y:10 3330 檢測座標->y:7 3331 (double)(終點->y - 檢測座標->y) == 3 3332 (double)(終點->y - 檢測座標->y)^2 == 9 3333 ---------------------------------- 3334 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 34 3335 ---------------------------------- 3336 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 5.83095 3337 ---------------------------------- 3338 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==58.3095 3339 檢測座標:0.7 H值 == 58.3095 3340 ============================H值計算完畢============================ 3341 3342 檢測座標:0.7 F值 == 128 3343 ============================================================================================= 3344 3345 3346 >>1,5 在開放連結串列 跳過<< 3347 ----------------------------G值計算開始---------------------------- 3348 檢測座標:1,7 3349 檢測座標->x:1 3350 minNodeF->x:1 3351 檢測座標->x - minNodeF->x == 0 3352 ---------------------------------- 3353 檢測座標->y:7 3354 minNodeF->y:6 3355 檢測座標->y - minNodeF->y == 1 3356 ---------------------------------- 3357 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 3358 檢測座標:1.7 -->G值 == 66 3359 ============================G值計算完畢============================ 3360 3361 檢測座標:1.7 3362 終點->x:5 3363 檢測座標->x:1 3364 (double)(終點->x - 檢測座標->x) == 4 3365 (double)(終點->x - 檢測座標->x)^2 == 16 3366 ---------------------------------- 3367 終點->y:10 3368 檢測座標->y:7 3369 (double)(終點->y - 檢測座標->y) == 3 3370 (double)(終點->y - 檢測座標->y)^2 == 9 3371 ---------------------------------- 3372 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 25 3373 ---------------------------------- 3374 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 5 3375 ---------------------------------- 3376 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==50 3377 檢測座標:1.7 H值 == 50 3378 ============================H值計算完畢============================ 3379 3380 檢測座標:1.7 F值 == 116 3381 ============================================================================================= 3382 3383 3384 ----------------------------G值計算開始---------------------------- 3385 檢測座標:2,7 3386 檢測座標->x:2 3387 minNodeF->x:1 3388 檢測座標->x - minNodeF->x == 1 3389 ---------------------------------- 3390 檢測座標->y:7 3391 minNodeF->y:6 3392 檢測座標->y - minNodeF->y == 1 3393 ---------------------------------- 3394 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 3395 檢測座標:2.7 -->G值 == 70 3396 ============================G值計算完畢============================ 3397 3398 檢測座標:2.7 3399 終點->x:5 3400 檢測座標->x:2 3401 (double)(終點->x - 檢測座標->x) == 3 3402 (double)(終點->x - 檢測座標->x)^2 == 9 3403 ---------------------------------- 3404 終點->y:10 3405 檢測座標->y:7 3406 (double)(終點->y - 檢測座標->y) == 3 3407 (double)(終點->y - 檢測座標->y)^2 == 9 3408 ---------------------------------- 3409 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 18 3410 ---------------------------------- 3411 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 4.24264 3412 ---------------------------------- 3413 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==42.4264 3414 檢測座標:2.7 H值 == 42.4264 3415 ============================H值計算完畢============================ 3416 3417 檢測座標:2.7 F值 == 112 3418 ============================================================================================= 3419 3420 3421 開放連結串列第1個節點為: 3,1 F值為:116 --->父節點為:4,2 3422 開放連結串列第2個節點為: 7,1 F值為:116 --->父節點為:6,2 3423 開放連結串列第3個節點為: 2,3 F值為:118 --->父節點為:3,4 3424 開放連結串列第4個節點為: 8,3 F值為:118 --->父節點為:7,4 3425 開放連結串列第5個節點為: 2,2 F值為:123 --->父節點為:3,3 3426 開放連結串列第6個節點為: 8,2 F值為:123 --->父節點為:7,3 3427 開放連結串列第7個節點為: 4,0 F值為:124 --->父節點為:5,1 3428 開放連結串列第8個節點為: 5,0 F值為:120 --->父節點為:5,1 3429 開放連結串列第9個節點為: 6,0 F值為:124 --->父節點為:5,1 3430 開放連結串列第10個節點為: 1,4 F值為:128 --->父節點為:2,5 3431 開放連結串列第11個節點為: 1,5 F值為:116 --->父節點為:2,5 3432 開放連結串列第12個節點為: 9,4 F值為:128 --->父節點為:8,5 3433 開放連結串列第13個節點為: 9,5 F值為:116 --->父節點為:8,5 3434 開放連結串列第14個節點為: 3,0 F值為:129 --->父節點為:4,1 3435 開放連結串列第15個節點為: 7,0 F值為:129 --->父節點為:6,1 3436 開放連結串列第16個節點為: 1,3 F值為:132 --->父節點為:2,4 3437 開放連結串列第17個節點為: 9,3 F值為:132 --->父節點為:8,4 3438 開放連結串列第18個節點為: 2,1 F值為:136 --->父節點為:3,2 3439 開放連結串列第19個節點為: 8,1 F值為:136 --->父節點為:7,2 3440 開放連結串列第20個節點為: 0,5 F值為:140 --->父節點為:1,6 3441 開放連結串列第21個節點為: 0,6 F值為:130 --->父節點為:1,6 3442 開放連結串列第22個節點為: 0,7 F值為:128 --->父節點為:1,6 3443 開放連結串列第23個節點為: 1,7 F值為:116 --->父節點為:1,6 3444 開放連結串列第24個節點為: 2,7 F值為:112 --->父節點為:1,6 3445 =================================== 3446 從開放列表中取最小 F 的節點為:2.7 3447 ================================================= 3448 開放連結串列移除、關閉連結串列增加節點為: 2,7 F值為:112 3449 ======================================================= 3450 關閉連結串列第1個節點為: 5,2 F值為:0 3451 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 3452 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 3453 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 3454 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 3455 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 3456 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 3457 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 3458 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 3459 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 3460 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 3461 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 3462 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 3463 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 3464 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 3465 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 3466 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 3467 關閉連結串列第18個節點為: 7,3 F值為:96 --->父節點為:6,3 3468 關閉連結串列第19個節點為: 5,1 F值為:100 --->父節點為:5,2 3469 關閉連結串列第20個節點為: 2,5 F值為:100 --->父節點為:3,4 3470 關閉連結串列第21個節點為: 8,5 F值為:100 --->父節點為:7,4 3471 關閉連結串列第22個節點為: 4,1 F值為:104 --->父節點為:5,2 3472 關閉連結串列第23個節點為: 6,1 F值為:104 --->父節點為:5,2 3473 關閉連結串列第24個節點為: 2,4 F值為:105 --->父節點為:3,4 3474 關閉連結串列第25個節點為: 8,4 F值為:105 --->父節點為:7,4 3475 關閉連結串列第26個節點為: 3,2 F值為:110 --->父節點為:4,3 3476 關閉連結串列第27個節點為: 7,2 F值為:110 --->父節點為:6,3 3477 關閉連結串列第28個節點為: 1,6 F值為:112 --->父節點為:2,5 3478 關閉連結串列第29個節點為: 2,7 F值為:112 --->父節點為:1,6 3479 =========================================================== 3480 3481 3482 判斷周圍座標點: 1,6 3483 >>1,6不可用於下步判斷<< 3484 判斷周圍座標點: 1,7 3485 判斷周圍座標點: 1,8 3486 判斷周圍座標點: 2,6 3487 >>2,6不可用於下步判斷<< 3488 判斷周圍座標點: 2,7 3489 >>2,7不可用於下步判斷<< 3490 判斷周圍座標點: 2,8 3491 判斷周圍座標點: 3,6 3492 >>3,6不可用於下步判斷<< 3493 判斷周圍座標點: 3,7 3494 判斷周圍座標點: 3,8 3495 minNodeF周圍點收集判斷完畢 3496 >>1,7 在開放連結串列 跳過<< 3497 ----------------------------G值計算開始---------------------------- 3498 檢測座標:1,8 3499 檢測座標->x:1 3500 minNodeF->x:2 3501 檢測座標->x - minNodeF->x == 1 3502 ---------------------------------- 3503 檢測座標->y:8 3504 minNodeF->y:7 3505 檢測座標->y - minNodeF->y == 1 3506 ---------------------------------- 3507 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 3508 檢測座標:1.8 -->G值 == 84 3509 ============================G值計算完畢============================ 3510 3511 檢測座標:1.8 3512 終點->x:5 3513 檢測座標->x:1 3514 (double)(終點->x - 檢測座標->x) == 4 3515 (double)(終點->x - 檢測座標->x)^2 == 16 3516 ---------------------------------- 3517 終點->y:10 3518 檢測座標->y:8 3519 (double)(終點->y - 檢測座標->y) == 2 3520 (double)(終點->y - 檢測座標->y)^2 == 4 3521 ---------------------------------- 3522 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 20 3523 ---------------------------------- 3524 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 4.47214 3525 ---------------------------------- 3526 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==44.7214 3527 檢測座標:1.8 H值 == 44.7214 3528 ============================H值計算完畢============================ 3529 3530 檢測座標:1.8 F值 == 128 3531 ============================================================================================= 3532 3533 3534 ----------------------------G值計算開始---------------------------- 3535 檢測座標:2,8 3536 檢測座標->x:2 3537 minNodeF->x:2 3538 檢測座標->x - minNodeF->x == 0 3539 ---------------------------------- 3540 檢測座標->y:8 3541 minNodeF->y:7 3542 檢測座標->y - minNodeF->y == 1 3543 ---------------------------------- 3544 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 3545 檢測座標:2.8 -->G值 == 80 3546 ============================G值計算完畢============================ 3547 3548 檢測座標:2.8 3549 終點->x:5 3550 檢測座標->x:2 3551 (double)(終點->x - 檢測座標->x) == 3 3552 (double)(終點->x - 檢測座標->x)^2 == 9 3553 ---------------------------------- 3554 終點->y:10 3555 檢測座標->y:8 3556 (double)(終點->y - 檢測座標->y) == 2 3557 (double)(終點->y - 檢測座標->y)^2 == 4 3558 ---------------------------------- 3559 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 13 3560 ---------------------------------- 3561 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 3.60555 3562 ---------------------------------- 3563 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==36.0555 3564 檢測座標:2.8 H值 == 36.0555 3565 ============================H值計算完畢============================ 3566 3567 檢測座標:2.8 F值 == 116 3568 ============================================================================================= 3569 3570 3571 ----------------------------G值計算開始---------------------------- 3572 檢測座標:3,7 3573 檢測座標->x:3 3574 minNodeF->x:2 3575 檢測座標->x - minNodeF->x == 1 3576 ---------------------------------- 3577 檢測座標->y:7 3578 minNodeF->y:7 3579 檢測座標->y - minNodeF->y == 0 3580 ---------------------------------- 3581 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 3582 檢測座標:3.7 -->G值 == 80 3583 ============================G值計算完畢============================ 3584 3585 檢測座標:3.7 3586 終點->x:5 3587 檢測座標->x:3 3588 (double)(終點->x - 檢測座標->x) == 2 3589 (double)(終點->x - 檢測座標->x)^2 == 4 3590 ---------------------------------- 3591 終點->y:10 3592 檢測座標->y:7 3593 (double)(終點->y - 檢測座標->y) == 3 3594 (double)(終點->y - 檢測座標->y)^2 == 9 3595 ---------------------------------- 3596 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 13 3597 ---------------------------------- 3598 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 3.60555 3599 ---------------------------------- 3600 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==36.0555 3601 檢測座標:3.7 H值 == 36.0555 3602 ============================H值計算完畢============================ 3603 3604 檢測座標:3.7 F值 == 116 3605 ============================================================================================= 3606 3607 3608 ----------------------------G值計算開始---------------------------- 3609 檢測座標:3,8 3610 檢測座標->x:3 3611 minNodeF->x:2 3612 檢測座標->x - minNodeF->x == 1 3613 ---------------------------------- 3614 檢測座標->y:8 3615 minNodeF->y:7 3616 檢測座標->y - minNodeF->y == 1 3617 ---------------------------------- 3618 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 3619 檢測座標:3.8 -->G值 == 84 3620 ============================G值計算完畢============================ 3621 3622 檢測座標:3.8 3623 終點->x:5 3624 檢測座標->x:3 3625 (double)(終點->x - 檢測座標->x) == 2 3626 (double)(終點->x - 檢測座標->x)^2 == 4 3627 ---------------------------------- 3628 終點->y:10 3629 檢測座標->y:8 3630 (double)(終點->y - 檢測座標->y) == 2 3631 (double)(終點->y - 檢測座標->y)^2 == 4 3632 ---------------------------------- 3633 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 8 3634 ---------------------------------- 3635 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 2.82843 3636 ---------------------------------- 3637 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==28.2843 3638 檢測座標:3.8 H值 == 28.2843 3639 ============================H值計算完畢============================ 3640 3641 檢測座標:3.8 F值 == 112 3642 ============================================================================================= 3643 3644 3645 開放連結串列第1個節點為: 3,1 F值為:116 --->父節點為:4,2 3646 開放連結串列第2個節點為: 7,1 F值為:116 --->父節點為:6,2 3647 開放連結串列第3個節點為: 2,3 F值為:118 --->父節點為:3,4 3648 開放連結串列第4個節點為: 8,3 F值為:118 --->父節點為:7,4 3649 開放連結串列第5個節點為: 2,2 F值為:123 --->父節點為:3,3 3650 開放連結串列第6個節點為: 8,2 F值為:123 --->父節點為:7,3 3651 開放連結串列第7個節點為: 4,0 F值為:124 --->父節點為:5,1 3652 開放連結串列第8個節點為: 5,0 F值為:120 --->父節點為:5,1 3653 開放連結串列第9個節點為: 6,0 F值為:124 --->父節點為:5,1 3654 開放連結串列第10個節點為: 1,4 F值為:128 --->父節點為:2,5 3655 開放連結串列第11個節點為: 1,5 F值為:116 --->父節點為:2,5 3656 開放連結串列第12個節點為: 9,4 F值為:128 --->父節點為:8,5 3657 開放連結串列第13個節點為: 9,5 F值為:116 --->父節點為:8,5 3658 開放連結串列第14個節點為: 3,0 F值為:129 --->父節點為:4,1 3659 開放連結串列第15個節點為: 7,0 F值為:129 --->父節點為:6,1 3660 開放連結串列第16個節點為: 1,3 F值為:132 --->父節點為:2,4 3661 開放連結串列第17個節點為: 9,3 F值為:132 --->父節點為:8,4 3662 開放連結串列第18個節點為: 2,1 F值為:136 --->父節點為:3,2 3663 開放連結串列第19個節點為: 8,1 F值為:136 --->父節點為:7,2 3664 開放連結串列第20個節點為: 0,5 F值為:140 --->父節點為:1,6 3665 開放連結串列第21個節點為: 0,6 F值為:130 --->父節點為:1,6 3666 開放連結串列第22個節點為: 0,7 F值為:128 --->父節點為:1,6 3667 開放連結串列第23個節點為: 1,7 F值為:116 --->父節點為:1,6 3668 開放連結串列第24個節點為: 1,8 F值為:128 --->父節點為:2,7 3669 開放連結串列第25個節點為: 2,8 F值為:116 --->父節點為:2,7 3670 開放連結串列第26個節點為: 3,7 F值為:116 --->父節點為:2,7 3671 開放連結串列第27個節點為: 3,8 F值為:112 --->父節點為:2,7 3672 =================================== 3673 從開放列表中取最小 F 的節點為:3.8 3674 ================================================= 3675 開放連結串列移除、關閉連結串列增加節點為: 3,8 F值為:112 3676 ======================================================= 3677 關閉連結串列第1個節點為: 5,2 F值為:0 3678 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 3679 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 3680 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 3681 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 3682 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 3683 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 3684 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 3685 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 3686 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 3687 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 3688 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 3689 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 3690 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 3691 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 3692 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 3693 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 3694 關閉連結串列第18個節點為: 7,3 F值為:96 --->父節點為:6,3 3695 關閉連結串列第19個節點為: 5,1 F值為:100 --->父節點為:5,2 3696 關閉連結串列第20個節點為: 2,5 F值為:100 --->父節點為:3,4 3697 關閉連結串列第21個節點為: 8,5 F值為:100 --->父節點為:7,4 3698 關閉連結串列第22個節點為: 4,1 F值為:104 --->父節點為:5,2 3699 關閉連結串列第23個節點為: 6,1 F值為:104 --->父節點為:5,2 3700 關閉連結串列第24個節點為: 2,4 F值為:105 --->父節點為:3,4 3701 關閉連結串列第25個節點為: 8,4 F值為:105 --->父節點為:7,4 3702 關閉連結串列第26個節點為: 3,2 F值為:110 --->父節點為:4,3 3703 關閉連結串列第27個節點為: 7,2 F值為:110 --->父節點為:6,3 3704 關閉連結串列第28個節點為: 1,6 F值為:112 --->父節點為:2,5 3705 關閉連結串列第29個節點為: 2,7 F值為:112 --->父節點為:1,6 3706 關閉連結串列第30個節點為: 3,8 F值為:112 --->父節點為:2,7 3707 =========================================================== 3708 3709 3710 判斷周圍座標點: 2,7 3711 >>2,7不可用於下步判斷<< 3712 判斷周圍座標點: 2,8 3713 判斷周圍座標點: 2,9 3714 判斷周圍座標點: 3,7 3715 判斷周圍座標點: 3,8 3716 >>3,8不可用於下步判斷<< 3717 判斷周圍座標點: 3,9 3718 判斷周圍座標點: 4,7 3719 判斷周圍座標點: 4,8 3720 判斷周圍座標點: 4,9 3721 minNodeF周圍點收集判斷完畢 3722 >>2,8 在開放連結串列 跳過<< 3723 ----------------------------G值計算開始---------------------------- 3724 檢測座標:2,9 3725 檢測座標->x:2 3726 minNodeF->x:3 3727 檢測座標->x - minNodeF->x == 1 3728 ---------------------------------- 3729 檢測座標->y:9 3730 minNodeF->y:8 3731 檢測座標->y - minNodeF->y == 1 3732 ---------------------------------- 3733 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 3734 檢測座標:2.9 -->G值 == 98 3735 ============================G值計算完畢============================ 3736 3737 檢測座標:2.9 3738 終點->x:5 3739 檢測座標->x:2 3740 (double)(終點->x - 檢測座標->x) == 3 3741 (double)(終點->x - 檢測座標->x)^2 == 9 3742 ---------------------------------- 3743 終點->y:10 3744 檢測座標->y:9 3745 (double)(終點->y - 檢測座標->y) == 1 3746 (double)(終點->y - 檢測座標->y)^2 == 1 3747 ---------------------------------- 3748 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 10 3749 ---------------------------------- 3750 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 3.16228 3751 ---------------------------------- 3752 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==31.6228 3753 檢測座標:2.9 H值 == 31.6228 3754 ============================H值計算完畢============================ 3755 3756 檢測座標:2.9 F值 == 129 3757 ============================================================================================= 3758 3759 3760 >>3,7 在開放連結串列 跳過<< 3761 ----------------------------G值計算開始---------------------------- 3762 檢測座標:3,9 3763 檢測座標->x:3 3764 minNodeF->x:3 3765 檢測座標->x - minNodeF->x == 0 3766 ---------------------------------- 3767 檢測座標->y:9 3768 minNodeF->y:8 3769 檢測座標->y - minNodeF->y == 1 3770 ---------------------------------- 3771 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 3772 檢測座標:3.9 -->G值 == 94 3773 ============================G值計算完畢============================ 3774 3775 檢測座標:3.9 3776 終點->x:5 3777 檢測座標->x:3 3778 (double)(終點->x - 檢測座標->x) == 2 3779 (double)(終點->x - 檢測座標->x)^2 == 4 3780 ---------------------------------- 3781 終點->y:10 3782 檢測座標->y:9 3783 (double)(終點->y - 檢測座標->y) == 1 3784 (double)(終點->y - 檢測座標->y)^2 == 1 3785 ---------------------------------- 3786 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 5 3787 ---------------------------------- 3788 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 2.23607 3789 ---------------------------------- 3790 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==22.3607 3791 檢測座標:3.9 H值 == 22.3607 3792 ============================H值計算完畢============================ 3793 3794 檢測座標:3.9 F值 == 116 3795 ============================================================================================= 3796 3797 3798 ----------------------------G值計算開始---------------------------- 3799 檢測座標:4,7 3800 檢測座標->x:4 3801 minNodeF->x:3 3802 檢測座標->x - minNodeF->x == 1 3803 ---------------------------------- 3804 檢測座標->y:7 3805 minNodeF->y:8 3806 檢測座標->y - minNodeF->y == 1 3807 ---------------------------------- 3808 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 3809 檢測座標:4.7 -->G值 == 98 3810 ============================G值計算完畢============================ 3811 3812 檢測座標:4.7 3813 終點->x:5 3814 檢測座標->x:4 3815 (double)(終點->x - 檢測座標->x) == 1 3816 (double)(終點->x - 檢測座標->x)^2 == 1 3817 ---------------------------------- 3818 終點->y:10 3819 檢測座標->y:7 3820 (double)(終點->y - 檢測座標->y) == 3 3821 (double)(終點->y - 檢測座標->y)^2 == 9 3822 ---------------------------------- 3823 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 10 3824 ---------------------------------- 3825 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 3.16228 3826 ---------------------------------- 3827 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==31.6228 3828 檢測座標:4.7 H值 == 31.6228 3829 ============================H值計算完畢============================ 3830 3831 檢測座標:4.7 F值 == 129 3832 ============================================================================================= 3833 3834 3835 ----------------------------G值計算開始---------------------------- 3836 檢測座標:4,8 3837 檢測座標->x:4 3838 minNodeF->x:3 3839 檢測座標->x - minNodeF->x == 1 3840 ---------------------------------- 3841 檢測座標->y:8 3842 minNodeF->y:8 3843 檢測座標->y - minNodeF->y == 0 3844 ---------------------------------- 3845 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 3846 檢測座標:4.8 -->G值 == 94 3847 ============================G值計算完畢============================ 3848 3849 檢測座標:4.8 3850 終點->x:5 3851 檢測座標->x:4 3852 (double)(終點->x - 檢測座標->x) == 1 3853 (double)(終點->x - 檢測座標->x)^2 == 1 3854 ---------------------------------- 3855 終點->y:10 3856 檢測座標->y:8 3857 (double)(終點->y - 檢測座標->y) == 2 3858 (double)(終點->y - 檢測座標->y)^2 == 4 3859 ---------------------------------- 3860 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 5 3861 ---------------------------------- 3862 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 2.23607 3863 ---------------------------------- 3864 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==22.3607 3865 檢測座標:4.8 H值 == 22.3607 3866 ============================H值計算完畢============================ 3867 3868 檢測座標:4.8 F值 == 116 3869 ============================================================================================= 3870 3871 3872 ----------------------------G值計算開始---------------------------- 3873 檢測座標:4,9 3874 檢測座標->x:4 3875 minNodeF->x:3 3876 檢測座標->x - minNodeF->x == 1 3877 ---------------------------------- 3878 檢測座標->y:9 3879 minNodeF->y:8 3880 檢測座標->y - minNodeF->y == 1 3881 ---------------------------------- 3882 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 3883 檢測座標:4.9 -->G值 == 98 3884 ============================G值計算完畢============================ 3885 3886 檢測座標:4.9 3887 終點->x:5 3888 檢測座標->x:4 3889 (double)(終點->x - 檢測座標->x) == 1 3890 (double)(終點->x - 檢測座標->x)^2 == 1 3891 ---------------------------------- 3892 終點->y:10 3893 檢測座標->y:9 3894 (double)(終點->y - 檢測座標->y) == 1 3895 (double)(終點->y - 檢測座標->y)^2 == 1 3896 ---------------------------------- 3897 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 2 3898 ---------------------------------- 3899 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 1.41421 3900 ---------------------------------- 3901 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==14.1421 3902 檢測座標:4.9 H值 == 14.1421 3903 ============================H值計算完畢============================ 3904 3905 檢測座標:4.9 F值 == 112 3906 ============================================================================================= 3907 3908 3909 開放連結串列第1個節點為: 3,1 F值為:116 --->父節點為:4,2 3910 開放連結串列第2個節點為: 7,1 F值為:116 --->父節點為:6,2 3911 開放連結串列第3個節點為: 2,3 F值為:118 --->父節點為:3,4 3912 開放連結串列第4個節點為: 8,3 F值為:118 --->父節點為:7,4 3913 開放連結串列第5個節點為: 2,2 F值為:123 --->父節點為:3,3 3914 開放連結串列第6個節點為: 8,2 F值為:123 --->父節點為:7,3 3915 開放連結串列第7個節點為: 4,0 F值為:124 --->父節點為:5,1 3916 開放連結串列第8個節點為: 5,0 F值為:120 --->父節點為:5,1 3917 開放連結串列第9個節點為: 6,0 F值為:124 --->父節點為:5,1 3918 開放連結串列第10個節點為: 1,4 F值為:128 --->父節點為:2,5 3919 開放連結串列第11個節點為: 1,5 F值為:116 --->父節點為:2,5 3920 開放連結串列第12個節點為: 9,4 F值為:128 --->父節點為:8,5 3921 開放連結串列第13個節點為: 9,5 F值為:116 --->父節點為:8,5 3922 開放連結串列第14個節點為: 3,0 F值為:129 --->父節點為:4,1 3923 開放連結串列第15個節點為: 7,0 F值為:129 --->父節點為:6,1 3924 開放連結串列第16個節點為: 1,3 F值為:132 --->父節點為:2,4 3925 開放連結串列第17個節點為: 9,3 F值為:132 --->父節點為:8,4 3926 開放連結串列第18個節點為: 2,1 F值為:136 --->父節點為:3,2 3927 開放連結串列第19個節點為: 8,1 F值為:136 --->父節點為:7,2 3928 開放連結串列第20個節點為: 0,5 F值為:140 --->父節點為:1,6 3929 開放連結串列第21個節點為: 0,6 F值為:130 --->父節點為:1,6 3930 開放連結串列第22個節點為: 0,7 F值為:128 --->父節點為:1,6 3931 開放連結串列第23個節點為: 1,7 F值為:116 --->父節點為:1,6 3932 開放連結串列第24個節點為: 1,8 F值為:128 --->父節點為:2,7 3933 開放連結串列第25個節點為: 2,8 F值為:116 --->父節點為:2,7 3934 開放連結串列第26個節點為: 3,7 F值為:116 --->父節點為:2,7 3935 開放連結串列第27個節點為: 2,9 F值為:129 --->父節點為:3,8 3936 開放連結串列第28個節點為: 3,9 F值為:116 --->父節點為:3,8 3937 開放連結串列第29個節點為: 4,7 F值為:129 --->父節點為:3,8 3938 開放連結串列第30個節點為: 4,8 F值為:116 --->父節點為:3,8 3939 開放連結串列第31個節點為: 4,9 F值為:112 --->父節點為:3,8 3940 =================================== 3941 從開放列表中取最小 F 的節點為:4.9 3942 ================================================= 3943 開放連結串列移除、關閉連結串列增加節點為: 4,9 F值為:112 3944 ======================================================= 3945 關閉連結串列第1個節點為: 5,2 F值為:0 3946 關閉連結串列第2個節點為: 5,3 F值為:80 --->父節點為:5,2 3947 關閉連結串列第3個節點為: 5,4 F值為:80 --->父節點為:5,3 3948 關閉連結串列第4個節點為: 5,5 F值為:80 --->父節點為:5,4 3949 關閉連結串列第5個節點為: 4,3 F值為:84 --->父節點為:5,2 3950 關閉連結串列第6個節點為: 6,3 F值為:84 --->父節點為:5,2 3951 關閉連結串列第7個節點為: 4,4 F值為:84 --->父節點為:5,3 3952 關閉連結串列第8個節點為: 6,4 F值為:84 --->父節點為:5,3 3953 關閉連結串列第9個節點為: 4,5 F值為:84 --->父節點為:5,4 3954 關閉連結串列第10個節點為: 6,5 F值為:84 --->父節點為:5,4 3955 關閉連結串列第11個節點為: 4,2 F值為:90 --->父節點為:5,2 3956 關閉連結串列第12個節點為: 6,2 F值為:90 --->父節點為:5,2 3957 關閉連結串列第13個節點為: 3,4 F值為:91 --->父節點為:4,3 3958 關閉連結串列第14個節點為: 7,4 F值為:91 --->父節點為:6,3 3959 關閉連結串列第15個節點為: 3,5 F值為:91 --->父節點為:4,4 3960 關閉連結串列第16個節點為: 7,5 F值為:91 --->父節點為:6,4 3961 關閉連結串列第17個節點為: 3,3 F值為:96 --->父節點為:4,3 3962 關閉連結串列第18個節點為: 7,3 F值為:96 --->父節點為:6,3 3963 關閉連結串列第19個節點為: 5,1 F值為:100 --->父節點為:5,2 3964 關閉連結串列第20個節點為: 2,5 F值為:100 --->父節點為:3,4 3965 關閉連結串列第21個節點為: 8,5 F值為:100 --->父節點為:7,4 3966 關閉連結串列第22個節點為: 4,1 F值為:104 --->父節點為:5,2 3967 關閉連結串列第23個節點為: 6,1 F值為:104 --->父節點為:5,2 3968 關閉連結串列第24個節點為: 2,4 F值為:105 --->父節點為:3,4 3969 關閉連結串列第25個節點為: 8,4 F值為:105 --->父節點為:7,4 3970 關閉連結串列第26個節點為: 3,2 F值為:110 --->父節點為:4,3 3971 關閉連結串列第27個節點為: 7,2 F值為:110 --->父節點為:6,3 3972 關閉連結串列第28個節點為: 1,6 F值為:112 --->父節點為:2,5 3973 關閉連結串列第29個節點為: 2,7 F值為:112 --->父節點為:1,6 3974 關閉連結串列第30個節點為: 3,8 F值為:112 --->父節點為:2,7 3975 關閉連結串列第31個節點為: 4,9 F值為:112 --->父節點為:3,8 3976 =========================================================== 3977 3978 3979 判斷周圍座標點: 3,8 3980 >>3,8不可用於下步判斷<< 3981 判斷周圍座標點: 3,9 3982 判斷周圍座標點: 3,10 3983 判斷周圍座標點: 4,8 3984 判斷周圍座標點: 4,9 3985 >>4,9不可用於下步判斷<< 3986 判斷周圍座標點: 4,10 3987 判斷周圍座標點: 5,8 3988 判斷周圍座標點: 5,9 3989 判斷周圍座標點: 5,10 3990 minNodeF周圍點收集判斷完畢 3991 >>3,9 在開放連結串列 跳過<< 3992 ----------------------------G值計算開始---------------------------- 3993 檢測座標:3,10 3994 檢測座標->x:3 3995 minNodeF->x:4 3996 檢測座標->x - minNodeF->x == 1 3997 ---------------------------------- 3998 檢測座標->y:10 3999 minNodeF->y:9 4000 檢測座標->y - minNodeF->y == 1 4001 ---------------------------------- 4002 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 4003 檢測座標:3.10 -->G值 == 112 4004 ============================G值計算完畢============================ 4005 4006 檢測座標:3.10 4007 終點->x:5 4008 檢測座標->x:3 4009 (double)(終點->x - 檢測座標->x) == 2 4010 (double)(終點->x - 檢測座標->x)^2 == 4 4011 ---------------------------------- 4012 終點->y:10 4013 檢測座標->y:10 4014 (double)(終點->y - 檢測座標->y) == 0 4015 (double)(終點->y - 檢測座標->y)^2 == 0 4016 ---------------------------------- 4017 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 4 4018 ---------------------------------- 4019 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 2 4020 ---------------------------------- 4021 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==20 4022 檢測座標:3.10 H值 == 20 4023 ============================H值計算完畢============================ 4024 4025 檢測座標:3.10 F值 == 132 4026 ============================================================================================= 4027 4028 4029 >>4,8 在開放連結串列 跳過<< 4030 ----------------------------G值計算開始---------------------------- 4031 檢測座標:4,10 4032 檢測座標->x:4 4033 minNodeF->x:4 4034 檢測座標->x - minNodeF->x == 0 4035 ---------------------------------- 4036 檢測座標->y:10 4037 minNodeF->y:9 4038 檢測座標->y - minNodeF->y == 1 4039 ---------------------------------- 4040 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 4041 檢測座標:4.10 -->G值 == 108 4042 ============================G值計算完畢============================ 4043 4044 檢測座標:4.10 4045 終點->x:5 4046 檢測座標->x:4 4047 (double)(終點->x - 檢測座標->x) == 1 4048 (double)(終點->x - 檢測座標->x)^2 == 1 4049 ---------------------------------- 4050 終點->y:10 4051 檢測座標->y:10 4052 (double)(終點->y - 檢測座標->y) == 0 4053 (double)(終點->y - 檢測座標->y)^2 == 0 4054 ---------------------------------- 4055 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 1 4056 ---------------------------------- 4057 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 1 4058 ---------------------------------- 4059 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==10 4060 檢測座標:4.10 H值 == 10 4061 ============================H值計算完畢============================ 4062 4063 檢測座標:4.10 F值 == 118 4064 ============================================================================================= 4065 4066 4067 ----------------------------G值計算開始---------------------------- 4068 檢測座標:5,8 4069 檢測座標->x:5 4070 minNodeF->x:4 4071 檢測座標->x - minNodeF->x == 1 4072 ---------------------------------- 4073 檢測座標->y:8 4074 minNodeF->y:9 4075 檢測座標->y - minNodeF->y == 1 4076 ---------------------------------- 4077 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 4078 檢測座標:5.8 -->G值 == 112 4079 ============================G值計算完畢============================ 4080 4081 檢測座標:5.8 4082 終點->x:5 4083 檢測座標->x:5 4084 (double)(終點->x - 檢測座標->x) == 0 4085 (double)(終點->x - 檢測座標->x)^2 == 0 4086 ---------------------------------- 4087 終點->y:10 4088 檢測座標->y:8 4089 (double)(終點->y - 檢測座標->y) == 2 4090 (double)(終點->y - 檢測座標->y)^2 == 4 4091 ---------------------------------- 4092 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 4 4093 ---------------------------------- 4094 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 2 4095 ---------------------------------- 4096 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==20 4097 檢測座標:5.8 H值 == 20 4098 ============================H值計算完畢============================ 4099 4100 檢測座標:5.8 F值 == 132 4101 ============================================================================================= 4102 4103 4104 ----------------------------G值計算開始---------------------------- 4105 檢測座標:5,9 4106 檢測座標->x:5 4107 minNodeF->x:4 4108 檢測座標->x - minNodeF->x == 1 4109 ---------------------------------- 4110 檢測座標->y:9 4111 minNodeF->y:9 4112 檢測座標->y - minNodeF->y == 0 4113 ---------------------------------- 4114 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 1 4115 檢測座標:5.9 -->G值 == 108 4116 ============================G值計算完畢============================ 4117 4118 檢測座標:5.9 4119 終點->x:5 4120 檢測座標->x:5 4121 (double)(終點->x - 檢測座標->x) == 0 4122 (double)(終點->x - 檢測座標->x)^2 == 0 4123 ---------------------------------- 4124 終點->y:10 4125 檢測座標->y:9 4126 (double)(終點->y - 檢測座標->y) == 1 4127 (double)(終點->y - 檢測座標->y)^2 == 1 4128 ---------------------------------- 4129 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 1 4130 ---------------------------------- 4131 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 1 4132 ---------------------------------- 4133 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==10 4134 檢測座標:5.9 H值 == 10 4135 ============================H值計算完畢============================ 4136 4137 檢測座標:5.9 F值 == 118 4138 ============================================================================================= 4139 4140 4141 ----------------------------G值計算開始---------------------------- 4142 檢測座標:5,10 4143 檢測座標->x:5 4144 minNodeF->x:4 4145 檢測座標->x - minNodeF->x == 1 4146 ---------------------------------- 4147 檢測座標->y:10 4148 minNodeF->y:9 4149 檢測座標->y - minNodeF->y == 1 4150 ---------------------------------- 4151 (abs(檢測座標->x - minNodeF->x) + abs(檢測座標->y - minNodeF->y)) == 2 4152 檢測座標:5.10 -->G值 == 112 4153 ============================G值計算完畢============================ 4154 4155 檢測座標:5.10 4156 終點->x:5 4157 檢測座標->x:5 4158 (double)(終點->x - 檢測座標->x) == 0 4159 (double)(終點->x - 檢測座標->x)^2 == 0 4160 ---------------------------------- 4161 終點->y:10 4162 檢測座標->y:10 4163 (double)(終點->y - 檢測座標->y) == 0 4164 (double)(終點->y - 檢測座標->y)^2 == 0 4165 ---------------------------------- 4166 (double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2 == 0 4167 ---------------------------------- 4168 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2) == 0 4169 ---------------------------------- 4170 sqrt((double)(終點->x - 檢測座標->x)^2 + (double)(終點->y - 檢測座標->y)^2)* kCost1 ==0 4171 檢測座標:5.10 H值 == 0 4172 ============================H值計算完畢============================ 4173 4174 檢測座標:5.10 F值 == 112 4175 ============================================================================================= 4176 4177 4178 開放連結串列中找到了結束節點: 5,10 --->父節點為:4,9 4179 4180 尋路結果: 4181 (5,2) 4182 (4,3) 4183 (3,4) 4184 (2,5) 4185 (1,6) 4186 (2,7) 4187 (3,8) 4188 (4,9) 4189 (5,10) 4190 請按任意鍵繼續. . .