logo资料库

云南大学软件学院计算机图形学实验(1).pdf

第1页 / 共32页
第2页 / 共32页
第3页 / 共32页
第4页 / 共32页
第5页 / 共32页
第6页 / 共32页
第7页 / 共32页
第8页 / 共32页
资料共32页,剩余部分请下载后查看
配置OpenGL编程环境并完 成简单二维图形绘制 指导指导指导指导教师教师教师教师::::胡盛胡盛胡盛胡盛 实验时间:2012年9月25日(周二),晚7:00~8:40 实验地点:软件学院1525(信息安全技术实验室)
OpenGL编程环境 编程环境 编程环境编程环境 Windows环境 OpenGL核心函数库(opengl32.dll)和OpenGL实用函 数库(glu32.dll)都已安装在“系统安装目录 \WINDOWS\SYSTEM32\”目录下 Visual C++ 6.0 gl.h和glu.h位于“VC安装目录\VC\Include\GL\”目 录下 opengl32.lib和glu32.lib位于“VC安装目录 \VC\Lib\”目录下 2
OpenGL编程环境 编程环境(续续续续1) 编程环境编程环境 OpenGL工具库(GLUT) 可以从www.opengl.org网站下载,并 glut32.dll复制到“系统安装目录 \WINDOWS\SYSTEM32\”目录下 glut.h复制到“VC安装目录\VC\Include\GL\”目录下 glut32.lib复制到“VC安装目录\VC\Lib\”目录下 3
OpenGL编程环境 编程环境(续续续续2) 编程环境编程环境 VC 6.0 环境下如何将VC应用程序与OpenGL库 连接起来? 选择“Project Setings Link”,并在 Object/library moules区域插入:opengl32.lib, glu32.lib和glut32.lib 4
OpenGL编程环境 编程环境(续续续续3) 编程环境编程环境 Visual Studio 2005环境配置? 头文件位于“VS 2005安装目录\Microsoft Visual Studio8\VC\PlatformSDK\Include\gl\”目录下 库文件位于“VS 2005安装目录\Microsoft Visual Studio8\VC\PlatformSDK\Lib\”目录下 项目环境下添加库文件的方法“Project 项目名称 Properties Configuration Properties Linker Input Additional Dependencies” 应用程序添加“#include “stdafx.h”” 5
程序实例 (drawline0201.cpp) #include "stdafx.h" #include void init(void) { glClearColor(1.0, 1.0, 1.0, 0.0);//set display-window color to white. glMatrixMode(GL_PROJECTION);//set projection parameters gluOrtho2D(0.0, 200.0, 0.0, 150.0); //gluOrtho2D( )说明 } 6
程序实例(续1) void lineSegment(void) { glClear(GL_COLOR_BUFFER_BIT);//Clear display window. glColor3f(1.0, 0.0, 0.0);//Set line segment color to red. glBegin(GL_LINES); //glBegin()使用小结 glVertex2i(180, 15); glVertex2i(10, 145); glEnd(); glFlush();//Process all OpenGL routines as quickly as possible. } 7
程序实例(续2) Demo int main(int argc, char* argv[]) { glutInit(&argc, argv);//Initialize GLUT. glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);//Set display mode. 深入理解 glutInitWindowPosition(50, 100); //Set top-left dispaly-window position. glutInitWindowSize(400, 300);//Set display-window width and height. 直观理解 glutCreateWindow("An Example OpenGL Program");//Create display window. init();//Execute initialization procedure. glutDisplayFunc(lineSegment);//Send graphics to display window. glutMainLoop();//Display everything and wait. return 0; } 8
分享到:
收藏