- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用OpenGL画圆柱
用OpenGL画一个圆柱
环境设置
新建Win32 Application工程OpenGL
在工程-设置目录下设置OpenGL运行环境
在Link-对象/库模块下添加opengl32.lib glu32.lib glut32.lib
到这里,OpenGL的环境配置完成。
实验内容
新建一个Cylinder.c文件到OpenGL工程
代码:
#includeGL/glut.h
#includestdlib.h
#includewindows.h
#includemath.h
void display (void)
{
GLUquadricObj *cylinder_obj1;
GLUquadricObj *cylinder_obj2;
//GLUquadricObj *cylinder_obj3;
//然后再初始化
cylinder_obj1=gluNewQuadric();
cylinder_obj2=gluNewQuadric();
//cylinder_obj3=gluNewQuadric();
glClearColor(0.0, 0.0, 0.0, 0.0);
//设置当前清除颜色
glClear(GL_COLOR_BUFFER_BIT);
//GL_COLOR_BUFFER_BIT标志 用 glClearColor设置的颜色 清除 颜色缓冲区
glColor3f(0.1, 1.0, 0.1); //glColor{34}{b s i f d ub us ui}{v}(....)
//画圆柱体
glPushMatrix();
glRotatef(60,1.0,0.0,0.0);//绕y轴旋转的角度
glRotatef(30,0.0,1.0,0.0);//绕z轴旋转的角度
glRotatef(0,0.0,0.0,1.0);//延x轴旋转的角度
gluCylinder(cylinder_obj1, 2, 2, 4, 100, 50);
gluDisk(cylinder_obj2,0,2,100,50);
glPopMatrix();
glFlush();
}
void Reshape(int w,int h)
{
glViewport(0,0,(GLsizei)w,(GLsizei)h);//设置视口
glMatrixMode(GL_PROJECTION);//指定当前矩阵
glLoadIdentity(); //将当前矩阵换成单位阵
gluPerspective //设置透视图
(45.0, //透视角设置为 45 度,在Y方向上以角度为单位的视野
(GLfloat)w/(GLfloat)h, // 窗口的宽与高比
1.0, // 视野透视深度:近点1.0f
50.0 // 视野透视深度:始点0.1f远点1000.0f
);
glMatrixMode(GL_MODELVIEW);//指名当前矩阵
glLoadIdentity();
glTranslatef(0.0,0.0,-25.0);//建立透视投影矩阵
}
int main(int argc,char *argv[])
{
glutInit(argc,argv); //glut初始化
glutInitDisplayMode(GLUT_RGB|GLUT_SINGLE);//设置rgb颜色及单缓存模式
glutInitWindowPosition(100,100);//设置窗口初始位置
glutInitWindowSize(400,400);//设置窗口 大小
glutCreateWindow(OpenGL圆柱体);//创建显示窗口
glutReshapeFunc(Reshape);// 设置旋转回调函数
glutDisplayFunc(display);//设置显示回调函数
glutMainLoop();//进入消息循环
return 0;
}
添加代码后,出现这个错误,说不能打开GL/glut库,所以还要配置继续配置OpenGL环境
需要将
分别加入到不同的位置
打开文件夹
D:\软件包及安装\VC98\Include\GL
把glut.h复制到这个文件夹中
打开文件夹
D:\软件包及安装\VC98\Lib
把glut.lib和glut32.lib都放到这个静态函数库所在的文件夹中
打开文件夹
C:\Windows\Sys
文档评论(0)