vc基于GDI的基本位图绘制软件的设计毕业论文-图绘制软件
以下是资料介绍,如需要完整的请充值下载.
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
资料介绍:
目 录
1 绪论 1
1.1 课题的背景及目的 1
1.2 国内外研究状况和相关领域中已有的成果 1
1.3 设计和研究方法 2
1.4 论文结构 2
2 . 基本理论知识及应用 4
2.1 绘图系统说明 4
2.2 MFC编程 5
2.2.1 MFC简介 5
2.2.2 Windows消息机制 5
2.3 图像格式——BMP格式 7
2.4 GDI简介 8
2.4.1 GDI原理 8
2.4.2 GDI基本图形 9
3. 绘图软件设计 10
3.1 绘图软件功能模块 10
3.2 软件各功能模块描述 11
3.2.1 钢笔绘图 11
3.2.2 绘制直线 11
3.2.3 绘制曲线 12
3.2.4 绘制封闭图形 13
3.2.5 选择绘图样式 13
3.2.6 橡皮擦 14
3.2.7 编辑 14
3.2.8 文件操作 14
3.3 系统数据结构及类的设计 14
3.3.1 主要类的层次结构 14
3.3.2 程序设计的小技巧——多态技术应用 15
3.4 程序操作流程图和数据流图 16
think58好,好think58 [版权所有:http://think58.com]
4. 绘图软件实现 18
4.1 图形用户界面 18
4.2 程序前台界面的实现 19
4.3 图形基类的实现 20
4.4 直线类的实现 20
4.6 曲线类的实现 20
4.6 椭圆、矩形类的实现 20
4.7 橡皮类的实现 20
总结 20
致谢 20
参考文献 20
1.2 国内外研究状况和相关领域中已有的成果
一般来说,图像编辑类软件指对照片级图像进行处理,由连续色调组成的图像层次丰富色彩逼真,这些软件的特点是以像素点进行着色称为“位图”,程序启动后占用资源很大,在打开一幅质量较高的图像文件时会达到几十兆,作为位图图像过分依赖分辨率的原因是要保留每个点坐标的信息。绘图软件用于绘制矢量图形,适合绘制或处理相对简单的由轮廓组成的基本图形,如机械图形的设计制作,它们是由Windows的函数集来描述图像信息的,图形的边缘光滑干净。虽然矢量图放大不会引起失真,但处理较复杂的图形时运算量非常大。对位图与矢量图软件我们不能简单说谁优谁劣,它们各自针对不同的使用领域,就技术而言,图像处理软件针对位图化图像而设计,计算机绘图类则针对矢量图形而设计。对于图像编辑软件,它应该具有三项主要的功能:照片编辑、图像组合、绘画。而评价绘图软件则主要考察它在绘图技巧及艺术性方面。目前图形软件在功能上不像过去那样严格区分了,就位图程序来说,像PhotoShop中也可以保存以路径形式存在的矢量图形。 [资料来源:http://think58.com]
计算机绘图类软件与图像编辑软件中最较为流行的有以下几种:矢量绘图类的有Autodesk公司的著名产品AutoCAD,它已成为建筑方案设计、施工模型的主要计算机辅助工具。Adobe公司的Illustrator,其已成为图形处理的工业标准。位图类的有美国Adobe公司的著名产品PhotoShop,其已经成为平面处理的工业标准。美国的Microsoft公司的PhotoDraw是一款非常强大非专业用户图像处理工具。MetaCreations公司的Painter其采用了天然多媒体专利技术成为专业美术家走向数字绘图的桥梁。[2]
基本理论知识及应用
2.1 绘图系统说明
计算机绘图是伴随着计算机及其外围设备的发展而产生和发展起来的一门新兴的绘图技术。这门技术将传统的语言方法与先进的计算机相结合,给生产、科研、管理、国防等领域提供了高速度、高效率和高精度的图形设计及输出方法。它是继印刷、照相技术后产生图形信息的又一重大革命。
简单地说,计算机绘图学是研究如何利用计算机来处理图形的学科,它涉及到多门学科的知识,例如工程制图学基础、数学基础、程序设计方法学和计算机科学及其它学科的专业知识。这些知识间的相互渗透,形成了计算机绘图的内容和系统。
计算机绘图所研究的内容可概括为六个方面:
1、硬件的合理配制;
think58 [资料来源:http://think58.com]
2、产生图形的原理及各种算法;
3、图形信息的存储技术;
4、图形软件的设计;
5、绘图硬件和软件的接口技术;
6、图形软件的标准化问题。
计算机绘图系统是一系列硬件和软件的集合,是一个以计算机为主体兼有产生图形的系统。因此,除了计算机系统配制的一般硬件,软件以外,还必须配备有图形的输出、输入等外部设备。在软件方面要具有实现输出的信息处理系统,一般包括数据库、绘图语言、图形子程序库等。具体地说,一个计算机绘图系统应该具备下列基本功能:
1、输入功能:向计算机输入各种命令和图形数据。
2、计算功能:备有形体设计、分析方法程序库和有关形体描述的图形数据库,应具有坐标的几何变换、曲线曲面的形成及图形间进行交、并、差的运算功能。
3、存储功能:在计算机的内外存储器中能存放图形数据,尤其是存放图形数据之间的相互关系,可根据需要实现有关信息的检索、图形的修改等处理。
4、对话功能:通过图形显示器直接进行人机通讯,实现图形生成过程中人的主动干预。
5、输出功能:在显示器上显示图形或在绘图仪上绘出图形。
2.2 MFC编程
2.2.1 MFC简介
MFC是一个很大的、扩展了的C++类层次结构,它能使开发Windows应用程序变得更加容易。MFC是在整个Windows家族中都是兼容的,也就是说,无论是Windows3.x、Windows95还是Windows NT,所使用的MFC是兼容的。每当新的Windows版本出现时,MFC也会得到修改以便使旧的编译器和代码能在新的系统中工作。MFC也会得到扩展,添加新的特性、变得更加容易建立应用程序[3]。 think58.com [资料来源:www.THINK58.com]
与传统上使用C语言直接访问Windows API相反,使用MFC和C++的优点是MFC已经包含和压缩了所有标准的“样板文件”代码,这些代码是所有用C编写的Windows程序所必需的。因此用MFC编写的程序要比用C语言编写的程序小得多。另外,MFC所编写的程序的性能也毫无损失。必要时,你也可以直接调用标准C函数,因为MFC不修改也不隐藏Windows程序的基本结构[4]。
使用MFC的最大优点是它为你做了所有最难做的事。MFC中包含了上成千上万行正确、优化和功能强大的Windows代码。你所调用的很多成员函数完成了你自己可能很难完成的工作。从这点上将,MFC极大地加快了你的程序开发速度。 copyright think58 [资料来源:THINK58.com]
think58.com
[资料来源:http://think58.com]