谷萌计算机图形学实验解决方案.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
  实验报告 题 目: 计算机图形学 院 (系):信息与控制工程学院 专业班级: 计算机1202 姓 名: 谷萌 学 号: 120620218 指导教师: 周方晓 2015年12月 12日 实验一 熟悉Windows图形开发环境 一、实验目的? 1.?熟悉VisualC++6.0的开发环境;? 2.?掌握Windows图形输出的方法;? 3.?理解设备环境、画笔、画刷的概念,掌握常用的绘制函数。? 二、实验原理? 原理:使用Visual?C++在Windows下进行图形程序设计? 三、实验内容? 内容:?编写程序,要求如下:? 1.?定义一支红色画笔,绘制一个正方形;? 2.?用不同颜色的线条连接互不相临的两个顶点;? 3.?用不同颜色的画刷填充用上述方法所形成的图形的每一个区域。 四、实验步骤 使用Visual C++在Windows下进行图形程序设计的基本步骤是: (1)在绘制之前,创建绘图工具并设置相关的颜色、线型、线宽等属性; (2)调用相关的绘图函数选择绘图工具并进行绘图; (3)在绘制之后,恢复原有的绘图工具。 五、实验环境? ?已安装visual?C++6.0的Windows?XP计算机一台,u盘? 六、实验结果及分析? 运行结果如图所示 分析:?代码调试完毕,编译运行,按预期结果输出。 七、实验小结? ? 对我来说这次实验既是一次挑战也是一次全新的学习机会。当然这也是我第一次编写Windows图形程序,所以在编写过程中发现了许多问题,比如说vc++6.0软件存在问题,导致程序总是出现一些莫名其妙的错误,像无法打开工程,自动关闭等等。后来,经过询问老师和上网查询,才发现是软件和我的系统有兼容性问题,与一些软件也存在冲突。后来在网上的建议,我换成Windows?xp的虚拟机中运行,此问题得到了解决。? 除此之外,程序编写时将工程类型创建错了,导致无法连接成功。后来经过上网有哪些信誉好的足球投注网站相关内容解决了此问题。然后在调用一些画图的函数时对函数体了解不多,导致函数调用出错。 实验二 创建VC6.0下 OpenGL绘图程序的基本框架 实验目的? 1.?了解使用VC6.0下?OpenGL绘图程序的基本框架? 2.?掌握理解简单的OpenGL程序结构;? 3.?掌握OpenGL提供的基本图形函数,尤其是生成点、线、面的函数。 实验环境? 安装有Visual?C++?6.0的windowXp计算机一台,u盘。 实验原理内容步骤? 新建工程,在工程—设置—链接—L对象库模版中添加OPENGL库, 即opengl32.lib glu32.lib glaux.lib 如图所示: 在Visual C++中,修改视图类成员函数代码实现OpenGL绘图的过程如下: ① 在(文件名.view)视图类中改造PreCreateWindow函数:将窗口的客户区设置为OpenGL能够支持的风格。具体添加代码如下: cs.style|=WS_CLIPCHILDREN|WS_CLIPSIBLINGS; ② 在工具栏的视图——类向导中添加并改造OnCreate函数:定义像素存储格式,并创建一个OpenGL操作所必须的绘图上下文RC(Rendering Context)。使用一个PIXELFORMATDESCRIPTOR结构来指定像素格式,使用wglCreateContext()函数创建绘图上下文RC。 添加头文件: #include GL\glu.h #include GL\gl.h #include GL\glaux.h OnCreate函数中具体添加代码如下: //首先定义像素存储格式 PIXELFORMATDESCRIPTOR pfd= { sizeof(PIXELFORMATDESCRIPTOR), // pfd的大小 1, //结构的版本号 PFD_DRAW_TO_WINDOW| //支持window PFD_SUPPORT_OPENGL| //支持OpenGL PFD_DOUBLEBUFFER, //双缓存 PFD_TYPE_RGBA, //RGBA颜色模式 24, //24位颜色深度缓存 0,0,0,0,0,0, //color bits ignored 0, //no alpha buffer 0, //shift bit ignored 0, //不使用累积缓存 0,0,0,0, //accum bits ignored 32, //32位z缓冲

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档