本站所有资源均为高质量资源,各种姿势下载。
所有步骤放在一起:
首先,将起点加入到open list中。
然后重复以下过程:
a. 遍历open list,查找F值最小的节点,并将其作为当前要处理的节点。
b. 将这个节点移动到close list中。
c. 对当前方格的8个相邻方格中的每一个方格进行以下操作:
- 如果该方格是不可到达的或者已经在close list中,则忽略它。
- 否则,将该方格加入到open list中,并将当前方格设置为其父节点,记录该方格的F、G和H值。
- 如果该方格已经在open list中,检查经由当前方格到达它的路径是否更好,以G值作为参考。较小的G值表示这是一条更好的路径。如果是这样,将其父节点设置为当前方格,并重新计算其G和F值。如果open list按照F值排序,可能需要重新排序。
d. 当满足以下条件时停止:
- 将终点加入到open list中,此时路径已经找到。
- 查找终点失败,并且open list为空,此时没有路径可达。
3. 保存路径。从终点开始,沿着父节点移动每个方格,直到达到起点,这就是你的路径。