这是我学习ActionScript 3.0不久后的练习做,学习了A*算法,同时也希望对大家理解或回顾A*算法有所助益。
本演示提供给各位一个直观动态的A*原理演示,可以自己随意设计和反复起点终点及修改障碍物,演示效果本身完全依照老外写的那篇经典的A*算法教程的图例而来。
在程序方面,开发过程尽量依照MVC的思想,力图结构清晰和良好的可扩展性。也使用了一些ActionScritp 3.0的特性,比如更方便的自定义事件。寻路过程中节点的打开、关闭和启发状态的改变都是用一个自定义事件由模型模块来广播的,然后发消息到视图模块显示出来。
关于算法,基本按照A*教程所述,稍有不同的是外层用的递归而非循环。
本演示仅供学习交流,欢迎各位提出宝贵意见。