- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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
您可能关注的文档
- 初音未来演示文稿.ppt
- 宝宝睡觉不踏实解决方案.doc
- 宝宝科学起名10大策略 (2).doc
- 宝宝第17-18个月计划.doc
- 宝宝科学起名10大策略.doc
- 利用计算器求平均数[上学期]北师大版.ppt
- 宝宝蔬菜进食大计划.doc
- 利朗产品组合.ppt
- 宝宝起名技巧好名字字库精选.doc
- 宝宝辅食添加时间计划.docx
- 国际标准 IEC 61169-47:2015 EN Radio-frequency connectors - Part 47: Sectional specification for radio-frequency coaxial connectors with clamp coupling, typically for use in 75 Ω cable networks (type F-Quick) 无线电频率连接器 - 第47部分:用于无线电频率同轴连接器的部分规范,.pdf
- 国际标准 IEC 61158-5-17:2007 EN 工业通信网络 - 现场总线规范 - 第5-17部分:应用层服务定义 - 类型17元素 Industrial communication networks - Fieldbus specifications - Part 5-17: Application layer service definition - Type 17 elements.pdf
- 国际标准 IEC 61158-5-17:2007 EN Industrial communication networks - Fieldbus specifications - Part 5-17: Application layer service definition - Type 17 elements 工业通信网络 - 现场总线规范 - 第5-17部分:应用层服务定义 - 类型17元素.pdf
- 国际标准 IEC 60939-2-2:2004 EN_D 完整抑制无线电干扰滤波器单元-第2-2部分:空白详细规范-用于抑制电磁干扰的被动滤波器单元-仅需进行安全测试的滤波器(安全测试) Complete filter units for radio interference suppression - Part 2-2: Blank detail specification - Passive filter uits for electromagnetic interference .pdf
- 国际标准 IEC 60939-2-2:2004 EN_D Complete filter units for radio interference suppression - Part 2-2: Blank detail specification - Passive filter uits for electromagnetic interference suppression - Filters for which safety tests are required (safety.pdf
- 国际标准 IEC 60670-23:2006 EN-FR Boxes and enclosures for electrical accessories for household and similar fixed electrical installations - Part 23: Particular requirements for floor boxes and enclosures 家用和类似固定电气安装用电器配件的盒子与封闭装置——第23部分:地板箱和封闭装置的要求.pdf
- 国际标准 IEC 60670-23:2006 EN-FR 家用和类似固定电气安装用电器配件的盒子与封闭装置——第23部分:地板箱和封闭装置的要求 Boxes and enclosures for electrical accessories for household and similar fixed electrical installations - Part 23: Particular requirements for floor boxes and enclosures.pdf
- 2024版完整的货物运输合同书.doc
- 2024版无财产的离婚协议书书模板.doc
- 2024版委托融资租赁合同书书.doc
文档评论(0)