欢迎来到天天文库
浏览记录
ID:16208852
大小:468.00 KB
页数:18页
时间:2018-08-08
《计算机图形学课程设计-二维图形变换课程设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、计算机图形学课程设计目录一、课程设计任务及要求1二、需求分析12.1设计目标12.2设计环境12.2.1VC++6.012.2.2MFC22.3设计题目及要求2三、总体设计33.1实现的算法33.1.1DDA算法画直线33.1.2Bresenham算法画直线43.1.3中心点算法画圆和椭圆43.2图形变换的基本原理63.2.1平移变换63.2.2旋转变换63.2.3比例变换6四、详细设计74.1主要界面设计74.2设置颜色界面74.2.1界面设置代码:74.2.2点击“设置--颜色”后,运行结果如下:84.3二维线画图元实现84.4画多边形功能的实现124.5画Bezier曲线
2、功能的实现134.6二维图形变换的实现15五、运行调试与分析讨论17六、设计体会与小结17七、参考文献1717计算机图形学课程设计一、课程设计任务及要求利用VC++设计实现二维图形变换:1、学会使用VC++编写实现图形的绘制变换,需包括直线、曲线、多边形的绘制和变换2、建立图形信息输入窗口,来输入图形的几何信息、拓扑信息和属性信息等3、建立图形变换参数输入窗口,来输入图形的基本几何变换参数4、熟练掌握平移变化、旋转变化和比例变换二、需求分析计算机图形学(ComputerGraphics,简称CG)是一种使用数学算法将二维或三维图形转化为计算机显示器的栅格形式的科学。简单地说,计
3、算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。是计算机科学的一个分支领域,主要关注数字合成与操作视觉的图形内容。计算机图形学研究的是应用计算机产生图像的所有工作,不管图像是静态的还是动态的,可交互的还是固定的,等等。图形API是允许程序员开发包含交互式计算机图形操作的应用而不需要关注图形操作细节或任务系统细节的工具集。计算机图形学有着广泛的应用领域,包括物理、航天、电影、电视、游戏、艺术、广告、通信、天气预报等几乎所有领域都用到了计算机图形学的知识,这些领域通过计算机图形学将几何模型生成图像,将问题可视化从而为
4、各领域更好的服务。二维图形变换是实现这些的基础,本课程设计就是研究如何实现二维图形变换。2.1设计目标以图形学算法为目标,深入研究。继而策划、设计并实现一个能够表现计算机图形学算法原理的或完整过程的演示系统,并能从某些方面作出评价和改进意见。通过完成一个完整程序,经历策划、设计、开发、测试、总结和验收各阶段,达到:巩固和实践计算机图形学课程中的理论和算法;学习表现计算机图形学算法的技巧;培养认真学习、积极探索的精神。2.2设计环境2.2.1VC++6.0VC++6.0是Microsoft公司推出的一个基于Windows系统平台、可视化的17计算机图形学课程设计集成开发环境,它的
5、源程序按C++语言的要求编写,并加入了微软提供的功能强大的MFC(MicrosoftFoundationClass)类库。MFC中封装了大部分WindowsAPI函数和Windows控件,它包含的功能涉及到整个Windows操作系统。MFC不仅给用户提供了Windows图形环境下应用程序的框架,而且还提供了创建应用程序的组件,这样,开发人员不必从头设计创建和管理一个标准Windows应用程序所需的程序,而是从一个比较高的起点编程,故节省了大量的时间。另外,它提供了大量的代码,指导用户编程时实现某些技术和功能。因此,使用VC++提供的高度可视化的应用程序开发工具和MFC类库,可使
6、应用程序开发变得简单。2.2.2MFCMFC(MicrosoftFoundationClasses),是一个微软公司提供的类库(classlibraries)以C++类的形式封装了Windows的API,,它包含了窗口等许多类的定义。各种类的集合构成了一个应运程序的框架结构,以减少应用程序开发人员的工作量。其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。MFC6.0版本封装了大约200个类,其中的一些可以被用户直接使用。例如CWnd类封装了窗口的功能,包括打印文本、绘制图形及跟踪鼠标指针的移动等;CsplitterWnd类是从CWnd类
7、派生出来的,继承了基类或称父类CWnd类的所有特性,但增加了自己的功能,实现拆分窗口,使窗口至少可被拆分成两个窗口,用户可以移动两个窗口之间的边框来改变窗口的大小;CtoolBar类可以定义工具栏等。MFC命名的惯例是类的名字通常是由“C”打头;成员变量使用前缀“m_”,接着使用一个字母来指明数据类型,然后是变量的名称;所有的单词用大写字母开头。2.3设计题目及要求(1)题目:二维图形变换(2)要求:学会使用VC++编写实现二维图形的绘制变换,需包括直线、曲线、多边形的绘制和变换.2.4总体
此文档下载收益归作者所有