IT项目管理详细设计文档
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Smart Geometry 详细设计说明书
IT Project Management
SCUT
Copyright
1 概述
1.1 系统简述
由于目前的主流电子课件系统,无法满足教师在课堂教学互动中需要与用户界面自然、高效、连续性交互的要求。我们准备用我们的实际行动来试图改变这一现状,本项目拟实现一个能在ipad上运行的智能几何教育平台,其功能包括草图识别,手势识别,动态几何约束等。由于时间有限,动态几何约束求解与动态几何可视化这部分的功能暂不准备实现。非功能性的需求有系统出错处理及易操作性。
1.2 软件设计目标
本项目系统概要设计说明书是基于Smart Geometry智能几何教育平台需求分析书进行编写的。该项目将以笔代替鼠标键盘,能够连续添加笔迹批注,勾画并识别几何草图,用笔手势操纵界面元素。本概要设计同时也是为详细设计及后续开发,提供指导作用。
预期的读者:
详细设计人员
开发人员
测试人员
用户
1.3 参考资料
《ipad开发应用实战》,《iphone4与ipad开发基础教程》,《Objective-c 基础教程》,《ipad开发基础教程》,《ipad应用开发实例》。
2 术语表
本文档所涉及到的属于包含如下:
1、Stroke:笔迹,用户一次落笔提笔
2、Pen_Info:预处理
3、Graph:图形类
4、Guint:图元类
5、Graph_Edit:图形编辑类
6、Constraint:图形与图形之间的约束,一个图形拥有多个约束,由约束的类型来标识。
7、特征点:用于划分图元的点,比如三角形的顶点。
8、点集:一系列点的集合
9、图元:组成图形的最小单位,比如三角形的边。
10、双线程:当开始录制视频时,创建新的线程进行录制操作。
11、切割:通过特征点来划分点集属于的图元类型。
12、拟合:将被划分好的图元计算出最能代表该点集的方程表达式。
3 用例
上图表明使用本系统的用户需要打开软件系统,就能使用系统,用户输入图形进行草图识别,并可以对识别出来的图形进行清空、保存等功能。
序号用例编
号
用例名称简单描述
1 UC_01 graph-input 用户进行草图输入
2 UC_02 graph-save 用户对识别出来的图形进行保存
3 UC_03 graph-load 用户读取已经保存的图形
4 UC_04 graph-delete 用户对识别出来的图形进行清空删除
5 UC_05 graph-adjust 用户对已绘制的图形进行调整
6 UC_06 graph-handle 对输入的草图进行的一系列处理过程
7 UC_07 pre-handle 系统对输入的草图进行预处理
8 UC_08 graph-cut 系统根据特征点进行图元的分割
9 UC_09 graph-recognizat
ion
系统对分割出来的图元进行识别
10 UC_10 graph-rebuild 系统根据划分出来的图元进行图形的重
组
11 UC_11 graph-reshape 系统对重组出来的图形进行规整
12 UC_12 graph-constraint 系统对已有图形保持几何约束
13 UC_13 graph-output 系统输出一系列图形处理步骤后产生的
4 设计概述
4.1简述
本系统主要采用面向对象设计、主机的结构模式进行开发,利用数学的几何知识进行求解问题。
4.2 系统非功能描述、约束与估算
4.2.1系统非功能描述和约束如下表
任何一台具有一定的内存、无问题的CPU、一定的数据存储量的可使用的iPad即可。
4.2.2估算
暂无问题。
4.3 系统的复用计划
库、框架、模式、构件等方面的复用暂不考虑。
4.4系统结构设计
4.4.1系统边界模型
1.可有效识别出基本图形,比如直线,三角形,圆形等。
2.同时具有实时调整图形的功能。
3.提供保存和重新载入功能。
4.提供录音和录频的功能。
5.提供笔形,笔色,背景色选择功能。
6.提供坐标系坐标功能。
4.4.2系统功能架构
1、智能几何(smart geometry)系统技术框架主要包括七部分:笔交互信息收集,用户意图判断器,笔迹识别,图形选定,编辑,存储。
2、笔交互信息收集:负责从外部硬件环境中获取最初的点集信息
(Pen_Info),并对收集到的点集信息进行早期的预处理,包括平滑和消除躁点处理,最后得到经过预处理以后的点集信息信息,被称为笔迹(Stroke)。
3、笔迹识别:分别对图元或者手势进行识别:
<1>对图元的识别包括先对笔迹(Stroke)进行分割,产生一系列图元对象(Gunit)集合,并对其识别和重构,最终得到图形对象(Graph),其中图元
对(Gunit)包括点图元(Point_Unit),直线图元(Line_Unit),曲线图元(Curve_Unit),图形对象(Graph)是由多个图元(Gunit)对象构成,包括点图形(Point_Graph),直线图形(Line_Graph),曲线图形(Curve_Graph)(圆,椭圆或者弧),三角形(Triangle_Graph),四边形(Rectangle_Graph),和特殊图形(Other_Graph)。
<2>对手势的识别包括从专家库中获取判断手势意图的规则,最后识别出手势的意图。
4、图形选定:负责对存在约束的图形几何的选定,主要通过图形探查器对图形进行选定操作,选定的图形被称为Selected_Obj。
5、编辑:用户进入编辑态时,可以对选定图形进行缩放,变形,移动,旋转四种编辑。
6、存储:对用户操作完后的图形进行存储。
4.4.3系统的逻辑架构
笔交互信息收集转换器:负责从外部硬件环境中获取最初的点集信息Pen_Info,并对Pen _Info进行早期预处理,包括平滑和消噪处理,最后得到经过预处理以后的点集信息,被称为笔迹Stroke。
用户意图判断器:负责从笔迹Stroke中判断用户意图,用户意图包括画图意图Sketch和手势意图Gesture。
识别器:分别对图元和手势进行识别:对图元的识别包括先对笔迹Stroke进行分割,产生一系列图元对象Gunit集合,并对其识别和重构,最终得到图形对象Graph,其中图元对象Gunit包括点图元Point_Unit、直线图元Line_Unit、曲线图元Curve_Unit,图形对象Graph是由多个图元Gunit对象构成,包括点图形Point_Graph、直线图形Line_Graph、曲线图形(圆、椭圆或者弧)Curve_Graph、三角形Triangle_Graph、四边形Rectangle_Graph、和非特殊图形Other_Graph;对手势的识别包括从专家库中获取判断手势意图的规则,最后识别出手势的意图。