基于JAVA的GUI编程的的迷宫游戏(实验准备)2020-12-12
实验要求:1、迷宫游戏是非常经典的游戏,在该题中要求随机生成一个迷宫,并求解迷宫;2、要求游戏支持玩家走迷宫,和系统走迷宫路径两种模式。玩家走迷宫,通过键盘方向键控制,并在行走路径上留下痕迹;系统走迷宫路径要求基于A*算法实现,输出走迷宫的最优路径并显示。3、设计交互友好的游戏图形界面。程序设计工具:1、语言:JAVA2、开发环境:IntelliJ IDEA Community Edition 2
实验要求:
1、迷宫游戏是非常经典的游戏,在该题中要求随机生成一个迷宫,并求解迷宫;
2、要求游戏支持玩家走迷宫,和系统走迷宫路径两种模式。玩家走迷宫,通过键盘方向键控制,并在行走路径上留下痕迹;系统走迷宫路径要求基于A*算法实现,输出走迷宫的最优路径并显示。
3、设计交互友好的游戏图形界面。
程序设计工具:
1、语言:JAVA
2、开发环境:IntelliJ IDEA Community Edition 2020
实验设计准备:
1、A*寻路算法:
一个比较好的参考链接如下:
A*寻路算法参考链接
但是有点整不明白这个算法到底怎么实现,有点细节感觉太麻烦了,既然不用考虑效率之类的问题,我就还是觉得用二叉树的深度优先遍历的逆推来做
2、二叉树的深度优先遍历的逆推:
二叉树的深度优先遍历的逆推主要分为:
- 生成树阶段:从起点向所有可能的方向生长出所有的树枝。起点作为根节点;
- 保存相关信息和标识位,将每个点的上一个父节点记忆住;
- 使用阶段:当我们查询根节点到某点路径,就是查询某点到根节点的路径,只要查出这个节点的父节点,由于父节点的唯一性,可以最后查到根节点位置,我们描绘出路径信息就找出了通路,
https://blog.csdn.net/weixin_43790276/article/details/105473527
2、基本图形界面设计:
1、awt包的主要类,如事件类(event.KeyAdapter、event.KeyEvent)、Graphics类。
- 事件类主要提供了按键的绑定和监控的功能;
- Graphics类最主要提供了一些基本几何图形的绘制方法;
2、util包Stack类和Random类
- util包链接
java.util是包含集合框架、遗留的 collection 类、事件模型、日期和时间设施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组、日期Date类、堆栈Stack类、向量Vector类等)。集合类、时间处理模式、日期时间工具等各类常用工具包。
-
Java实用工具类库中的类java.util.Random提供了产生各种类型随机数的方法。它可以产生int、long、float、double以及Goussian等类型的随机数。这也是它与java.lang.Math中的方法Random()最大的不同之处,后者只产生double型的随机数。
3、swing包的JFrame组件、JPanel组件、JOptionPane组件;
更多推荐
所有评论(0)