“素描人”绘图软件的设计与开发
内容摘要:近年来网络上的绘图软件五花八门,各式各样的都有,比如人们常用的Photoshop、illustrator、corelDRAW等,但这些绘图软件都比较复杂且不易上手。而本文将开发一款简易的绘图软件。 因为Java语言面向对象的优势也使得开发桌面程序变得非常容易,所以本文介绍了如何利用Java开发一款简易的绘制软件——“素描人”。首先本文介绍了开发本软件所需的工具,之后又具体说明了“素描人”的开发过程,最后对“素描人”进行测试运行。
关键词:绘制软件 “素描人” Java eclipse 目录
第1章 绪论 1 1.1 开发语言简介 1 1.2 开发工具简介 1 第2章 需求分析 2 第3章 软件设计 3 3.1界面设计 3 3.1.1 菜单栏设计 3 3.1.2 工具栏设计 4 3.1.3 状态栏设计 4 3.1.4 绘图区域设计 4 3.2 框架设计 5 3.3 类设计 5 3.3.1 类的概念 5 3.3.2 “素描人”类的设计 6 第4章 软件编码 8 4.1 搭建MVC框架 8 4.2 添加窗口 9 4.3 添加菜单栏 10 4.3.1 使用Action动作 11 4.3.2 定义Action类 11 4.3.3 创建“文件”、“颜色”、“元素”菜单 12 4.3.4 创建“选择”菜单 15 4.3.5 创建“帮助”菜单 16 4.4 添加工具栏 17 4.4.1 添加按钮 17 4.4.2 添加工具栏、菜单栏图标 18 4.4.3 添加工具提示 19 4.5 实现绘图功能 20 4.5.1 存储模型中的图形 22 4.5.2 用鼠标绘图 23 4.5.3 定义直线 25 4.5.4 定义矩形 26 4.5.5 定义圆 28 4.5.6 定义曲线 29 4.5.7 定义文本 31 4.6 添加状态栏 33 4.7 实现上下文菜单 33 4.7.1 变换用户坐标系统 34 4.7.2 旋转 35 4.8 实现文件操作 36 4.8.1 实现保存操作 37 4.8.2 实现打开操作 39 第5章 软件测试 41 5.1 测试“绘图”功能 41 5.2 测试“保存”功能 42 5.3 测试“打开”功能 43 5.4 测试总结 45 总结 46 参考文献 47 致谢 48
第1章 绪论 本次软件开发将使用Java7.0作为开发语言,基于eclipse平台进行开发。以下是Java语言和eclipse简介。 1.1 开发语言简介 Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
1.2 开发工具简介 eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。 虽然大多数用户很乐于将 Eclipse 当作 Java 集成开发环境(IDE)来使用,但 Eclipse 的目标却不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。
第2章 需求分析 本阶段主要的任务是准确地确定软件必须做什么,确定软件具备哪些功能。本软件做为一个绘图软件,本人将其所要具备的功能总结出以下十二点: 1) 可绘制简易图形,如一些流程图、数学图形等。 2) 可输入文字,可以对图形进行一些文字性描述等。 3) 可移动绘图元素,可移动任意图形或文字。 4) 可选择绘图元素,可选中任意图形或文字。 5) 可删除绘图元素,可删除选中的图形或文字。 6) 可旋转绘图元素,可对任意图形或文字进行旋转操作。 7) 可选择颜色,在绘制图形或文字前可进行颜色的选择。 8) 保存草图,可将绘制完成的草图保存起来。 9) 打开草图,可打开用本程序保存的绘图文件。 10) 修改草图,可对已保存的文件进行修改。 11) 打印图形,可打印用本程序绘制的草图。 12) 打印封面,可打印出专属草图的封面。
|