计算机图形学实验指导书.doc_第1页
计算机图形学实验指导书.doc_第2页
计算机图形学实验指导书.doc_第3页
计算机图形学实验指导书.doc_第4页
计算机图形学实验指导书.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机图形学实验指导书课程编号: 243005课程名称:计算机图形学英文名称:Computer graphics课程类型: 限选课实验学时:20适用对象: 计算机专业本科学生先修课程:C、C语言一、实验说明本实验课是实用图形编程技术的一个学习和实践。以VC+6.0作为编程工具,以MFC、OpenGL为基础,完成一些图形学方面的基本编程,为深入理解图形学原理提供重要的保证,并为今后的计算机图形学应用打下坚实的实践基础和编程积累,促进学生理解课程内容,为开发图形应用系统打下基础。教材的下篇(第八章到第十三章)就是本实验课的详细说明和指导。二、实验要求通过上机实验使学生掌握计算机图形学基础知识的实际应用。主要实践基本图形的生成和计算、图形变换与输出、图形输入与交互技术、图形数据结构等。要求学生具有阅读、编辑、调试VC语言程序的能力。三、评分标准1、实验报告结构完整。2、试验目的明确。3、实验准备充分、代码正确。4、结果正确、结论合理。5、成绩统一按照优、良、中、差四个档次给出。6、实验成绩的确定以最终上机检查的结果为准,实验报告及考勤供参考。四、推荐的参考书1、VC应用教程郑阿奇主编,北京:人民邮电出版社,2008.4。2、VC实用教程周进主编,北京:人民邮电出版社,2008.5。3、 VC面向对象与可视化程序设计黄维通主编,北京:清华大学出版社,2000.5。4、VC实践与提高李于剑主编,北京:中国铁道出版社,2001.7。目 录实验一:熟悉和掌握VCMFC程序开发环境 (2学时)实验二:学习掌握GDI对象类(2学时)实验三: Windows映射模式、绘图模式的设置(2学时)实验四:鼠标绘直线(4学时)实验五:鼠标绘园(2学时)实验六:绘制梅花曲线(4学时)实验七:OpenGL基础知识和实验框架的建立(2学时)实验八:OpenGL中基本图形的绘制(4学时)实验九:OpenGL中组合图形及光照和贴图(验证性实验,4学时)实验十:摄像漫游与OpenGL的坐标变换(验证性实验,4学时)实验一:熟悉和掌握VCMFC程序开发环境 (验证性实验,2学时)目的:1、掌握用AppWizard的Project窗口MFC AppWizardexe选项创建SDI应用程序的方法 2、熟悉SDI在编程、功能等方面的知识。 内容:1、熟悉VC6.0开发环境,它的系统菜单、工具栏、项目工作区窗口、文档窗口、输出窗口等。2、熟悉建立SDI程序的步骤和各步选项,了解各选项的意义。3、熟悉程序的编译、联结、执行等的操作方法与过程。4、熟悉MFC程序的组织结构,四个基本类(Application、Frame、Document、View)的相互关系和调用顺序。5、完成教材中第8章第3节的实验内容,即绘制点、直线、矩形,简单曲线,文本。要求:1、学习教材第8章1、2、3节的内容。2、借阅有关VCMFC的书籍,学习理解 MFC AppWizardexe的知识。3、采用Project的AppWizard的Project窗口MFC AppWizardexe选项创建SDI,按照AppWizard的6步提示,一步步生成SDI文件。4、观察SDI的开发环境,编译生成exe文件。5、观察Workspace窗口,分别观看Class窗口中的类,Resource窗口中的菜单、对话框、工具条等资源,File窗口中的的各种文件,四类文件之间的关系。6、找到 View类中的OnDraw函数。实验二:学习掌握GDI对象类(验证性实验,2学时)目的:1、 掌握用VC+编程的过程和方法,理解熟悉GDI对象类2、 理解0nDraw成员函数的知识,为编制绘图系统打基础。内容:1、找到由AppWizard直接生成的OnDraw函数。构造Cpen对象来绘制直线。2、使用CPen类成员函数CreatePen()创建一支蓝色画笔。3、使用CPen类成员函数CreatePenIndirect()创建一支黑色画笔。4、使用CBrush类成员函数CreateBrushIndirect来创建一个黑色的圆。5、使用CBrush类第二种构造函数来创建一支黑色(系统缺省的画刷)并绘制一个不带任何阴影线的矩形区域。6、使用CBrush类第三种构造函数来创建一支黑色,样式为CROSS的画刷并绘制一个具有阴影线的椭圆区域。7、使用CFont类成员函数CreateFont来创建CFont对象并绘制文本。要求:1、学习教材第8章第4节的内容。2、建立工程(名称自定,比如MyVC),工程具体创建步骤如下:(1) 单击FileNew菜单。(2)从弹出的对话框中选择第二个选项卡Project,并在左侧列表框中选择MFC AppWizard(exe);在Project name 编辑框中输入项目名称“MyVC”;在Location目录中选择要存放项目的文件夹。用鼠标左键单击“OK”按钮进入下一步。(3) 在应用程序向导的第一步中,选择“Single document”(单文档),然后用鼠标左键单击“Finish”接受所有其余的缺省设置。此时出现的对话框如图所示。(4) 用鼠标左键单击“OK”按钮确认项目设置。3、理解教材中相关实例的代码,按要求添加到适当的地方,调试并通过运行。4、运行结果应该与教材中的相关实例相符。实验三: Windows映射模式、绘图模式的设置(验证性实验,2学时)目的:1、理解熟悉Windows映射模式。2、理解熟悉绘图模式的设置的知识,为编制绘图系统打基础。 内容:1、在不同的映射模式之间切换,以完成图形大小和位置的改变以及逻辑坐标系的变化。2、练习建立逻辑坐标系的基本方法及设置窗口和视口坐标系X方向和Y方向幅度的基本方法。3、通过以下两个函数:pDC-DPtoLP(&point);/ point的值被转换成逻辑坐标值 pDC-LPtoDP(&point);/ point的值被转换成设备坐标值实现逻辑坐标到设备坐标的转换。4、练习在不同映射模式下,逻辑坐标和设备坐标的区别。5、练习绘图模式及其设置方法。要求:1、学习教材第8章第5节的内容。2、理解教材中相关实例的代码,按要求添加到适当的地方,调试并通过运行。3、运行结果应该与教材中的相关实例相符。实验四:鼠标绘直线(验证性实验,2学时)目的:掌握用VC+编程实现鼠标绘制各种基本图元。内容:1、用类向导ClassWizard添加鼠标事件即其响应函数OnLButtonDown。2、绘图模式的设置。3、用鼠标绘制直线。要求:1、学习教材第9章1节的内容。2、理解教材中相关实例的代码,按要求添加到适当的地方,调试并通过运行。3、运行结果应该与教材中的相关实例相符。实验五:鼠标绘园(验证性实验,2学时)目的:掌握用VC+编程实现鼠标绘制各种基本图元。内容:1、学习理解鼠标消息 WM_LBUTTONDOWN、WM_MOUSEMOVE 、WM_RBUTTONDOWN。2、用类向导ClassWizard添加鼠标事件即其响应函数。3、用鼠标绘制园。4、将此程序改造成画直线的程序。(画线的方式:单击,起点,再单击是终点,可以循环画线。)要求:1、学习教材第9章2节的内容。2、理解教材中相关实例的代码,按要求添加到适当的地方,调试并通过运行。3、运行结果应该与教材中的相关实例相符。实验六:绘制梅花曲线(验证性实验,4学时)目的:1、掌握绘制复杂曲线的基本方法直线段逼近曲线法。2、理解用菜单调用函数实现图形动态绘制的方法,为编制绘图系统打基础。 内容:1、练习绘制复杂曲线的基本方法直线段逼近曲线法。该方法的基本思想如下:首先写出该曲线的参数方程,当自变量由小到大依次变化时,就会得到一系列曲线上点的坐标,即逼近点,最后依次将各逼近点顺序连接起来。要绘制的梅花曲线参数方程如下: (其中)2、练习在CWnd派生类对话框的区域内绘各种图的方法。3、利用面向对象的思想改造此示例,建立梅花曲线类。要求:1、学习教材第9章3节的内容。2、理解教材中相关实例的代码,按要求添加到适当的地方,调试并通过运行。3、运行结果应该与教材中的相关实例相符。实验七:OpenGL基础知识和实验框架的建立(验证性实验,4学时)目的:1、建立Windows系统下的OpenGL实验框架。2、学习理解OpenGL工作流程。 内容:1、建立非控制台的Windows程序框架。2、建立OpenGL框架。3、建立OpenGL框架的类文件。4、完善Windows框架。5、理解程序间的相互关系。要求:1、学习教材第10章的内容。2、理解教材中相关实例的代码,按要求添加到适当的地方,调试并通过运行。3、运行结果应该与教材中的相关实例相符。4、编译第10章的框架代码,修改背景色、窗口标题。实验八:OpenGL中基本图形的绘制(验证性实验,2学时)目的:1、使用OpenGL绘制基本图形。2、使用类文件组织程序。 内容:1、学习OpenGL库函数命名方式。2、学习OpenGL构图形式。3、学习有关OpenGL的坐标变换。4、显示OpenGL立体图形。5、建立物体类文件。要求:1、学习教材第11章的内容。2、理解教材中相关实例的代码,按要求添加到适当的地方,调试并通过运行。3、运行结果应该与教材中的相关实例相符,如图11.5.2所示。实验九:OpenGL中组合图形及光照和贴图(验证性实验,2学时)目的:1、使用OpenGL绘制组合图形。2、使用OpenGL的光照和贴图。 内容:1、学习OpenGL绘制组合图形的方式。2、加深对组合图形的理解,特别是对基本图形的缩放、移动、旋转的理解。3、学习光照的使用,如何创建光源、启动光照。4、学习有关OpenGL贴图的知识。要求:1、学习教材第12章的内容。2、理解教材中相关实例的代码,按要求添加到适当的地方,调试并通过运行。3、运行结果应该与教材中的相关实例相符,如图12.1.1所示。实验十:摄像漫游与OpenGL的坐标变换(验证性实验,2学时)目的:1、使用OpenGL中摄

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论