原创代码,作者:星水一轩
仅供学习和交流,欢迎讨论。
迷宫寻路A*算法
f=g+h,其中g是当前点到起始点的距离;h是忽略障碍之后当前点到终点的距离;
距离的计算:水平、竖直=1、45°线=1.414
算法描述:
1,把起始格添加到open表。
2,重复如下的工作:
a) 寻找open表中F值最低的格子。称它为当前格。
b) 把它切换到close表。
c) 对相邻的8格中的每一个:
* 如果它不可通过或者已经在close表中,略过它。反之如下:
* 如果它不在open表中,把它添加进去。把当前格作为这一格的父节点。记录这一格的F,G,和H值。
*如果它已经在open表中,用G值为参考检查新的路径是否更好。更低的G值意味着更好的路径。如果是这样,就把这一格的父节点改成当前格,并且重新计算这一格的G和F值。如果保持open表按F值排序,改变之后重新对open表排序。
d) 停止,当
* 把目标格添加进了open表,这时候路径被找到,或者
* 没有找到目标格,open表已空。则路径不存在。
3.保存路径。从目标格开始,沿着每一格的父节点移动直到回到起始格。这就是你的路径。
A*寻路算法(silverlight实现)
5星 · 超过95%的资源 需积分: 9 25 浏览量
2011-03-26
09:47:19
上传
评论
收藏 119KB RAR 举报
Netbeans007
- 粉丝: 0
- 资源: 7
最新资源
- 三次样条插值的介绍-什么是三次样条插值原理
- http的一些相关介绍-对于我们来说什么是http
- 全卷积网络基于voc2012数据集简单pytorch实现
- pycharm的一些介绍-用于更好的学习python
- 基于C++的程序设计大赛天梯赛L2答案(天梯赛)
- 基于python实现的三次样条插值和均值插值法实现
- Python语言教程2-python批量图片大小处理-多文件夹
- Python语言教程1-python批量图片重命名,将后缀某几个不想要的字去除
- Space Combat Kit 太空战斗套件Unity游戏开发插件资源unitypackage C#
- Universal Device Preview 通用设备预览Unity游戏开发插件资源unitypackage
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈