第一章 问题的描述
问题域概述
创建一个仿真系统,使得用户可以操纵机器人来探索虚拟世界,并观察机器人的行为.
虚拟世界用来模拟现实世界中的不同环境(这里假设它是由14×14的方格构成的,如下图所示).在虚拟世界的特定区域存在一些障碍物,机器人在运动过程中,必须避开这些障碍物.在虚拟世界的交叉点上可能会放置单个的字符.机器人到达这个位置时,用户可以控制机器人读取这个字符,或者用其他的字符替换这个位置的字符.机器人在虚拟世界中只能沿着交叉点向东,南,西,北四个方向做直线运动(不能走斜线).
机器人维护着两个变量b1和b2,用来保存从虚拟世界中读取的字符.
机器人有6种基本动作:
Move:机器人朝着正前方移动一个交叉点(以上图中的机器人为例,执行一次"Move"动作之后,机器人由位置(8,1)移动到(7,1)).
Left:机器人原地沿逆时针方向旋转90度.
Read:机器人读取其所在位置的字符,并将这个字符的值赋给b1;如果这个位置上没有字符,则不改变b1的当前值.
Write:机器人将b1中的字符写入机器人当前所在的位置,如果这个位置上已经有字符,该字符的值将会被b1的值替代.如果这时b1没有值,即在执行Write动作之前没有执行过任何Read动作,那么需要提示用户相应的错误信息.
b1=b2:将b2的值赋给b1,b1的值被b2的值替代.
b2=b1:将b1的值赋给b2,b2的值被b1的值替代.
用户有3种操控机器人的方法:
手动控制:通过直接调用机器人的基本动作使机器人产生相应的行为.例如用户直接发送"Move"命令,使机器人移动到下一个交叉点.
自动控制(Run):事先编排好机器人的动作序列(这里称为指令),直接执行这个指令,使机器人可以连续运作.
单步控制(Step):是自动控制方式一种特殊形式,只执行指定指令中的一个动作.单步控制与手动控制的区别在于,单步控制时执行的是指令中的动作,只有一种控制方式,即执行下个动作;而手动控制时有6种基本动作可控制.
限定条件
机器人不能跨越虚拟世界的边界,即机器人的活动范围只能在上图所示的14×14的方阵内.
机器人不能穿越障碍物,只能避开.
若机器人试图跨越边界或穿越障碍物,则必须提示用户,不允许执行这个操作.
变量b1,b2的值只能通过机器人的"Read","b1=b2","b2=b1"动作设置,不能在程序中进行初始化.
须仿真的活动
创建虚拟世界:根据障碍物,字符的特定位置(针对特定的虚拟世界,这些位置在仿真过程中不能改变)和机器人的初始位置,创建机器人的活动环境(这时称虚拟世界处于其初始状态).虚拟世界处于初始状态时,默认为机器人都面向北方.
用户手动控制机器人的行为:要能够提供用户直接调用机器人基本动作的方式.
用户采用自动控制方式操控机器人.
用户采用单步控制方式操控机器人.
Reset:终止机器人的活动,并回到虚拟世界的初始状态.
提示用户错误操作:在仿真过程中,若出现错误而导致仿真活动无法继续进行时,要给出明确的错误提示信息.
第二章UML表示的分析与设计模型
此图是通过工具导入代码自动生成.有2个独立的类,机器类Robot和棋盘类Chess,还定义了一个点的结构,机盘上的每个点都是一个结构.在此用结构更好.在程序刚开始编写时考虑过定义成类,用对象填充每个点,但后来发现这样完全没必要.白白增加了程序编写的复杂性.结构也是一个很好的"类"型,在我的观念中,类也是一种特殊的结构,只是对结构的功能进行了扩充而已.可能这样理解不太准确,但在实际代码编写中个人感觉完全可以这么理解.若不正确请老师指出,不胜感激.
还有2个枚举类型,导入代码时自动生成了,我感觉放到图上没什么太大意义,就删除了.具体在代码部分会给出说明.
第三章 类,方法,全局变量或静态变量的命名规则;
命名规则按操作或变量的英文单词组合给出,便于理解.如机器类Robot和棋盘类Chess,点结构的名称为Point.
第四章 仿真流程
运用棋盘初始化文件 chess_b.txt
内容如下:
(0,0)=q
(1,2)-(1,12)//表示从(1,2)到(1,12)为障碍物
(1,2)-(10,2)//同上
手动控制运行结果:
自动运行:
- 孙鑫mfc视频教程 > 问题的描述
-
问题的描述
下载该文档 文档格式:DOC 更新时间:2007-12-01 下载次数:0 点击次数:1文档基本属性 文档语言: Simplified Chinese 文档格式: doc 文档作者: User 关键词: 主题: 备注: 点击这里显示更多文档属性 经理: 单位: Microsoft 分类: 创建时间: 上次保存者: 修订次数: 编辑时间: 文档创建者: 修订: 加密标识: 幻灯片: 段落数: 字节数: 备注: 演示格式: 上次保存时间:
- 下载地址 (推荐使用迅雷下载地址,速度快,支持断点续传)
- DOC格式下载
- 更多文档...
-
上一篇:人事管理系统
下一篇:9158虚拟视频免费下载|9158多人视频|9158虚免费聊天室视频拟视
点击查看更多关于孙鑫mfc视频教程的相关文档
- 您可能感兴趣的
- 孙鑫mfc视频教程下载 孙鑫mfc教程 孙鑫mfc教程01 孙鑫mfc视频 孙鑫mfc教学视频 孙鑫mfc源代码下 孙鑫mfc 孙鑫java视频教程下载 孙鑫c视频教程下载
- 大家在找
-
- · 公司战略管理
- · 上海龙凤网
- · 用internetexplorer
- · 诺基亚6300pc套件下载
- · comebake
- · 成都照明节能改造
- · 4位数字电压表
- · 东方锅炉自动控制中心
- · 中国电动汽车价格表
- · java微信下载
- · 斗破苍穹之秋雨起点
- · 09北京高考满分作文
- · 瑞舒伐他汀
- · 草柳社社区2011年8
- · 黄冈市政府网
- · 佛山市顺德区邮编
- · premierepro7.0中文版
- · 车辆维修保养管理制度
- · 宝宝一天睡几个小时
- · oppo英语课件打包下载
- · 双轴鼓型渔线轮
- · 北京舞蹈学柔软度
- · 造价工程师案例论坛
- · 婚外别样情
- · 财政所办公楼效果图
- · cnc绕线机控制器
- · 安全性食品论文
- · 职业道德自我评价
- · 建筑结构实训心得体会
- · 学前儿童健康与体育活动专题课件
- 赞助商链接