课程设计:校园导航系统
目录:
需求分析---------------------------------------------------------------------------------------------------------1
概要设计---------------------------------------------------------------------------------------------------------2
详细设计---------------------------------------------------------------------------------------------------------7
调试分析-------------------------------------------------------------------------------------------------------18
课程设计总结-------------------------------------------------------------------------------------------------19
一、 需求分析
新生入学需要一定的时间才能熟悉河海大学(江宁校区)的地理信息。对于起航周,
新生需要自主查询一些教室、办公楼的地理位置信息,才能知晓对应活动的地点。同
样对于一些校外参观人员,若想参观某一特定地点,在一般的 APP 导航中是无法找到
详尽到校园内某一处的地点的。为此,我小组编写校园导航系统,为新生与参观人员
提供校内主要地点的信息资料,并可以查询所给出的主要地点中,任意两点间的最短
路径。
1. 地图信息存储(金刘宇、苗凯龙)
I. 利用 GraphMartix 类来存储地图信息。地图中的每一个顶点都是一处地标/
建筑物。
II. 顶点的数据类型规定为 Position 类,包含编号、名称、功能介绍三个信息。
III. 地图中的边代表了从该点到其临界点所需的时间长短,边权重的信息存储
在 GraphMartix 类中的 arcs[ ][ ]邻接矩阵中。利用 Dist 类形成的 Dist 数组来
存放以某一点 Start 为起点时,初始化的 Dist 数组(利用 arcs[start][i] i=[0,n]
n 代表地图结点数量)。
2. 查询地标/建筑物的基本信息(刘生伟)
提供 getInfo( )函数,用户通过输入地标名称,查询 GraphMartix 对应的顶点表 Vex
中对应的建筑物/地标信息,返回该点编号、名称、功能信息。
3. 列出全部地点(刘生伟)
提供 getAllPositon( )函数,向用户返回系统中所存储的主要地标的名称。
4. 计算某两点间的最短信息(刘生伟)
提供 PathCalculator 类,利用其中 Dijkstra 算法,计算某两点间通行时间最短的一条
路径。
5. 地标名转换地标 Id(刘生伟)
提供 convert 函数,通过输入地标名,返回地标名对应的序号,为 Pathcalculator 服
务。
6. 用户界面(刘生伟)
通过控制台输出一个简单的用户交流界面。
二、 概要设计
1. 地图信息存储
I. 图中顶点 Position 定义
II. 图类 GraphMartix 的定义
III. Dist 数组定义
2. getInfo( )函数
源代码:
流程图:
3. getAllPositon( )函数
源代码: