实验一基于opengl的基本编程–有配套实验报告已上传.doc

实验一基于opengl的基本编程–有配套实验报告已上传.doc

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验一 基于opengl的二维图形编程 实验目的: 通过配置opengl编程环境,绘制基本图形和二维变换,掌握opengl的函数调用,深入理解opengl的框架和二维观察流水线的流程。 实验内容: 1. opengl编程环境组建(基于VC6.0或VC2008) 2. 基本图形绘制 3. 图形的二维变换 4. 二维观察流水线 5. 分形(选做,了解) 实验设备: PC,windows OS,VC++6.0/VC++2008环境, opengl函数包 预备知识: 1. opengl框架及函数库 2. VC++编程知识 3. 计算机图形学二维变换矩阵运算 4. 二维图形观察流水线过程 实验步骤: 1. opengl编程环境组建 参见PPT课件,配置VC++6.0与VC++2008,主要步骤为: 针对VC6.0: 下载opengl开发库文件夹 复制glut32.dll和glut.dll到…\windows\system32 复制glut.h到...\Microsoft Visual Studio\VC98\Include\GL 复制glut32.lib和glut.lib到…\Microsoft Visual Studio\VC98\Lib 新建工程后,进入Project菜单,选Settings项,弹出 Settings 对话框,选Link项,在 Libraries 栏目中加入OpenGL库:opengl32.lib glu32.lib glaux.lib 针对VC2008: 下载并安装opengl2.exe,生成GLSDK,包含include、lib、example等多个子文件夹,然后下载glut文件夹,包含include、lib两个子文件夹; 将GLSDK的include、lib文件夹路径设为环境变量; 打开vc2008IDE,在工具,选项里选择 项目和解决方案/文件目录,分别在include、lib两个下拉菜单中添加(1)中的两个include、两个lib路径进来即可。 2.opengl窗口编程 运行一个Windows环境OpenGL程序它将显示一个空的OpenGL窗口,可以在窗口和全屏模式下切换,按ESC退出以后应用程序cpp提供的源代码和课本P253-259,将该文件内的场景绘制函数Drawsence()替代步骤3中的同名函数,理解gluOrtho2D、glviewport函数的调用,参考glut窗口操作函数,实现同一窗口中的视口变换和多视口显示,结果如图所示, 6. Sierpinski模型绘制(选做,了解) 在完成前面工作的基础上,引入分形的递归算法,通过绘制小的三角形动作,生成Sierpinski镂垫 实验报告 用自己的话给出上述各步骤的原理理解,代码分析和实验结果,其中步骤3中至少绘制三个图形,步骤4中至少完成两个变换操作,步骤5两个结果都需要实现,杜绝雷同结果。 将报告文档、源码工程存放一个文件夹下,打包压缩,压缩名以“学号+姓名+GI+第1次实验”格式命名,实验报告内容见教辅系统提供样本,提交至教辅系统 。 附件1: opengl窗口编程代码,该附件以较大篇幅详细分析了VC++面向对象编程的窗口知识和windows应用的基本原理,重在理解,为后续绘图程序的添加做好铺垫 代码的前4行包括了每个库文件的头文件。如下所示:#include windows.h // Windows的头文件 #include gl\gl.h //包含最新的gl.h #include gl\glu.h //包含最新的glu.h库#include gl\glaux.h //X –windows系统应用库 接下来设置计划在程序中使用的所有变量。本例程将创建一个空的OpenGL窗口暂时还无需设置大堆的变量。余下需要设置的变量不多,但十分重要以后所写的每一个OpenGL程序中用到它们。第一行设置的变量是Rendering Context(着色描述表)。每一个OpenGL都被连接到一个着色描述表上。着色描述表将所有的OpenGL调用命令连接到Device Context(设备描述表)上。我将OpenGL的着色描述表定义为 hRC 。要让程序能够绘制窗口的话,还需要创建一个设备描述表,也就是第二行的内容。Windows的设备描述表被定义为 hDC 。DC将窗口连接到GDI(Graphics Device Interface图形设备接口)。而RC将OpenGL连接到DC。第三行的变量 hWnd 将保存由Windows给窗口指派的句柄。最后,第四行为程序创建了一个Instance(实例)。HGLRC hRC=NULL; //窗口着色描述表句柄 HDC

您可能关注的文档

文档评论(0)

shaoye348 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档