迷宫问题的设计与实现
1 问题陈述
创建一个迷宫, 一个迷宫由多个房间(Room)组成,一个房间知道它的邻居;
可能的邻居要么是一个房间(Room)、一堵墙( Wall)或通往另一个房间的
一扇门(Door)。
迷宫的布局示例如下:
要求能够添加房间和门,并且能够使一点从一个房间内移动到另一个房间,如
果两个房间有门,且门开着,则可以从一个房间移动到另一个房间,若门关着或者
两 个 房 间 之 间 没 有 门 , 则 不 可 以 在 两 个 房 间 之 间 移 动 . 要 求 设 计 一 个
mazeGame,能够呈现多种不同风格的迷宫,风格的不同体现在房间的颜色不
同,房间的大小不同等。此外还要求能够撤销先前移动的步骤。
2 用例模型及用例说明
用例图如图 1 所示:
用例说明
用例 1:创建房间
参与者:用户
目标:创建一个房间,并按照用户的指定设置 4 个方向的邻居
用例 2:创建门
参与者:用户
目标:按照用户的指定在两个房间之间创建一个门。
用例 3:设定迷宫风格
参与者:用户
目标:根据用户的指定,创建不同风格的迷宫,不同风格的迷宫具有不同风
格的门墙和房间。
用例 4:移动
参与者:用户
目标:用户通过键盘上的方向键操纵位于迷宫中的点在房间之间移动,如果
两个房间之间没有门或者门关着,则不能移动,如果门开着则可以移动。