手机触摸式指压动漫制作工具软件概要设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

手机触摸式指压动漫制作工具软件概要设计说明书文档标示:HNU_DM_210当前版本:V1.0当前状态:草稿发布日期2010/09/18发布√修改历史日期版本作者修改内容评审号2010/09/150.1毛伟新建文档2010/09/150.1毛伟新增总体设计2010/09/161.0毛伟修改手势识别1引言1.1目的本文档说明了本系统对程序系统的设计考虑,包括程序系统的基本处理流程图、程序系统的组织结构、模块划分、功能分配和运行设计等。本设计文档主要适用于本项目管理人员、设计人员、软件项目开发人员、系统测试人员、软件升级维护人员等,以便提供更好的设计、开发、测试和以后的维护升级。1.2读者对象管理人员、设计人员、开发人员、测试人员、维护人员。1.3参考资料1、《软件开发文档规范》2、《项目可行性研究报告》1.4术语与缩写1、Android:Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统;2、3G:第三代移动通信技术,是指支持高速数据传输的移动通讯技术;3、MID:MobileInternetDevise,移动互联设备;4、Linux:一类Unix计算机操作系统的统称;5、RGB:一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色;6、PC机:个人计算机;7、蓝牙:一种支持设备短距离通信(一般10m内)的无线电技术;8、动画帧:指Flash影片中的动作代码。9、AIDL:AndroidInterfaceDefinitionLanguage,即Android接口描述语言。2Android概述Android是基于Linux开放性内核的操作系统,是Google公司在2007年11月5日公布的智能手机平台,由操作系统、中间件、用户界面和应用程序组。2.1Android平台的优点1)平台的开放性允许任何厂商加入,使其拥有更多的开发者,新的应用还有创意可以不断的出现;2)摆脱了运营商的束缚,让手机更加贴近互联网;3)应用程序都是基于Java开发的,Java具有一次编写、到处运行的跨平台性。实现了能够在所有的Android设备中运行,真正做到了硬件无关性,降低了开发者的负担;4)提供了标准的API和SDK开发包,手机厂商可以根据需要自行开发或者使用已有的程序,从而打造出富有特色的Android平台。2.2Android平台的特征应用框架:用于开发可重用、可替代的组件;Dalvik虚拟机:Android采用的是自主开发的Dalvik虚拟机,它具有很好的硬件兼容性,在保证API兼容的同时针对移动手机进行了大幅优化,占用资源更小,运行效率更高;优化的图形:Android提供了优化过的图形系统,该系统由一个自定义的2D图形库和一个遵循OpenGLES1.0标准(硬件加速)的3D图形库组成;SQLite数据库:SQLite数据库是Android自带的一个标准的数据库,支持SQL语句,是一个轻量级的嵌入式数据库。媒体功能:支持各种通用的音视频和静态图像格式。网络支持功能:支持蓝牙、GPRS-EDGE、3G和WiFi无线网络。硬件支持功能:支持相机、GPS、导航和感应加速器等各类硬件。强大的开发环境:包括设备模拟器,调试工具,内存和性能检测工具,以及EclipseIDE的开发插件。2.3Android平台的体系架构Android不仅是一个操作系统,更是一个开源的体系架构。Android软件平台从上到下主要由五个部分构成:应用程序、应用程序框架、程序库、Android运行库以及Linux内核。1)应用程序Android的应用程序通常涉及用户界面和用户交互。Android本身提供了桌面(Home)、联系人(Contact)、电话(Phone)和浏览器(Browsers)等众多的核心应用。所有的核心应用都使用Java语言编写,同时开发者可以使用应用程序框架层的API实现自己的程序,这也是Android开源优势的体现。2)应用程序框架Android应用程序的开发基于程序框架和组件,开发人员拥有同核心应用程序一样的API访问权限。应用程序后面是一系列的服务和系统,其中包括:视图(Views)——构造应用程序的视图部分,包括列表(Lists)、文本框(Textboxes)、按钮(Buttons)等;内容提供器(ContentProviders)——提供一种实现数据互访和共享的机制;资源管理器(ResourcesManager)——负责管理非代码的访问,如本地字符串、图片资源及涉及布局的XML文件;通知管理器(NotificationManager)——用于将提示信息显示在状态栏上。例如,当有短信的时候,在状态栏上显示有新信息;活动管理器(ActivityManager)——用于管理应用程序的生命周期,并提供应用页面退出的机制。通过这套应用框架,各种服务和组件可以被用户的应用重复利用。3)程序库Android本身还包含了一整套核心库,能被系统中不同的组件使用。它们通过Android应用程序框架为开发者提供服务。核心库主要包括:系统C库——从BSD继承来的标准C系统函数库,是专门为基于嵌入式Linux设备制定的;媒体库——该库支持多种常用的音频、视频格式的回放和录制,同时支持静态图像文件,编码格式包括MPEG4、H.264、MP3、AAC、AMR、JPG、PNG;SurfaceManager--用于管理显示子系统,并为多个应用程序提供2D和3D图形层的无缝融合;LibWebCore---Web浏览器引擎,支持Android浏览器和一个可嵌入的Web视图;SGL——底层的2D图形引擎。3Dlibraries——基于OpenGLES1.0API实现,该库可以使用硬件3D加速,或者高度优化的3D软加速;FreeType——位图和矢量字体显示;SQLite——轻量级的关系型数据库。4)android运行库(RunTime)所有的Android应用程序都运行在它自己的进程里,该进程是一个Dalvik虚拟机的实例。Dalvik虚拟机是Google自主研发的,它被设计成一个设备,可以同时高效地运行多个虚拟系统。Dalvik在保证API方面兼容的同时,针对移动手机进行了优化,占用更小的资源,提高了运行效率。Dalvik虚拟机依赖于底层linux内核提供的功能,如线程机制和内存管理机制。5)linux内核Android基于Linux2.6内核来提供系统的核心服务,如安全性,内存管理,进程管理,网络协议栈和驱动模型。Linux内核也同时作为硬件和软件栈之间的抽象层。从总体架构中看,Android平台显示出了自身的特点,如集成了WebKit浏览器、Dalvik虚拟机等模块。这些模块的应用也成为了Android开发的焦点,开发者可以利用Android提供的模块接口,开发出具有特色的应用程序。2.4Android应用程序构成对于一个Android应用程序来说,一般由以下四种组件构造而成:1)ActivityActivity是最基本的Android应用程序组件。在应用程序中,一个Activity通常就是一个单独的屏幕。每一个Activity都被实现为一个独立的类,并继承基类Activity。2)BroadcastIntentReceiver当需要对一个外部事件(如当电话呼入)做出响应时,可以使用目的接收器(IntentReceiver)。目的接收器并不显示UI界面,当外部事件发生时,使用NotificationManager通知用户。3)ServiceService是具有长生命周期且没有用户界面的一段程序,它需要通过某一个Activity或者Context对象来调用。Service的生命周期方法比Activity少一些,只有onCreate、onStart和onDestory。有两种方式用来启动Service,它们的不同之处在于对Service生命周期的影响不一样。4)ContentProvider一个应用程序可以将它的数据保存到文件、SQL数据库,甚至是任何有效的存储设备中。当需要将应用数据与其它的应用共享时,使用ContentProvider来完成。ContentProvider类实现了一组标准的方法,从而能够让其它的应用保存或读取此ContentProvider处理的各种数据类型。在Android项目里有一个XML配置文件AndroidMainfest.xml,用于定义应用程序中用到的组件、组件的功能及必要条件。但并不是每一个Android应用程序都需要包含这四部分。这四种构造块之间的关系如图2.1所示:图2.1Android应用的构成和工作流程图3总体设计IntentContentProviderActivityActivity存储设备IntentReceiverBinder外部事件Service通过Intent实现活动之间的转换ContentProvider进行数据存储通过IntentReceiver对外部事件进行响应通过Binder对Service进行绑定3.1运行环境支持androidsdk2.0的手机或者MID。3.2系统总体框架AcitivitiesUI显示层Dispatch调度层UI与后台服务的通信通道(单例)ServicesAILD接口定义ContentProvidersReceiversOpenServicesOpenContentProviders通知系统事件实现对外接口读/写数据应用服务层通信通信以平台性提供对外服务服务管理模块服务绑定模块消息转发模块框架核心异常通知模块图3-2-1系统总体框架由图3-2-1可看出,系统主要分为三层:UI层(Activities层),调度层(Dispatch层)和应用服务层(Services层)。三层结构的职责归属与交互方式如下:层次组成职责与其他层次交互模式UI层Activities,Views负责应用程序UI显示负责进行跳转与调度层进行交互负责控制调度层对服务进行管理只能与调度层进行交互,不可见服务层。调度层服务管理模块服务绑定模块消息转发模块异常通知模块负责与后台服务的绑定与通信负责处理UI层的请求负责管理服务层相关服务负责管理应用程序的异常输出。与UI层通过本地接口进行交互。与应用服务层通过接口AIDL进行通信。应用服务层ServiceReceiverContentProvider负责与系统进行通信负责监控系统行为并处理负责与调度层进行消息通信与调度层通过远程接口AIDL进行通信,返回计算结果/事件等。3.3功能结构图图形处理动画合成动作捕捉、识别作品发送调度层服务管理服务绑定消息转发异常通知动漫预览UI层动漫发送图形绘制图层管理手势识别服务层图3-3-1系统功能结构图3.4总体数据流程图触摸式素材编辑手势识别素材编辑素材动画合成作品分享作品作品作品信息图3-3-1总体数据流程图3.5系统技术创新点平台采用视频装置捕捉手势(运用手势识别技术),用户只需在镜头下动动手势,便可在各种Android移动终端上实现动漫制作。打破了西方国家对我国的技术封锁,创立我们自己特色的“第六感”技术成果,将手势识别技术运用到小型的手持设备上,具有划时代的意义;建立了新型人际交流的平台,使动漫创建团体不再局限于专业人士,还可通过彩信、蓝牙实时与好友分享自己特制的新鲜出炉的DIY作品,带给用户更人性化,智能化的技术新体验;使用免费Android操作系统,节约了近三成制作成本,改进内存存储算法后,进一步节约成本,系统效率变高。3.6系统功能3.6.1功能说明手机触摸式指压动漫制作工具软件让用户可以直接在手机上制作分享动漫作品。主要功能包括图形编辑绘制、手势识别工具调用、手势识别绘画、动画合成、作品分享等。3.6.2主要功能结构图预览作品分享手势识别动漫制作拖曳变形旋转特效素材编辑绘图工具编辑面板文字面板颜料面板绘图功能绘画图层背景图层合成图层图层动画合成拍照图3-6-1主要功能结构图4.功能模块设计4.1拍照4.1

1 / 22
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功