Windows平台下Qt QOpenGL中glutSolidSphere()方法未定义的解决方法
2013-11-25 15:24
344 查看
Windows平台下Qt中glut库的使用
用Qt中的QGLWidget窗体类中是不包括glut工具库的,难怪在myGLWidget(在我的程序中是QGLWidget的派生类)中绘制实心球体是说“glutSolidSphere”: 找不到标识符,就是说没有这个函数的声明。接下来就来安装glut库:1.先下载glut库http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip。
2.将下载下来的文件解压,将glut32.lib和glut.lib两个lib文件移到qt目录下的./lib文件夹中。
3.将glut.dll和glut32.dll两个动态链接库移到C:\windows\system32中。
4.将glut.h文件移到qt目录下的\include\QtOpenGL中,并建立glut文件(不要后缀),这样就将glut安装好了,切换到在自己的程序中,在myGLWidget.cpp(QGLWidget派生类的cpp)加入“#include<glut>”,这样就可以使用glut中的函数了。
方法步骤4中,建立glut文件的过程,是这样的:在qt目录下的\include\QtOpenGL目录下,新建一个txt文件,里面输入代码:#include “glut.h”,然后把该txt文件的名字重命名为glut,注意这个地方不需要加后缀。另外需要特别注意的是,虽然我们把glut.h文件放入在qt目录下的\include\QtOpenGL下,且我们也在GLWidget.cpp中也加入了头文件#include<QtOpenGL>,但是因为QtSDK库编译的原因,我们在GLWidget.cpp中仍然需要添加#include<glut>语句才行。
既然上面提到了gluPerspective()对结果的影响很大,那么就很有必要了解该函数。在NeHe等人的教程中,该函数使用其各个参数设置为如下:
gluPerspective( 45.0, (GLfloat)width/(GLfloat)height, 0.1, 100.0 );
该函数是设置场景的透视效果的,所谓透视,可以简单的理解为越远处的物体看起来越小。所以这里的参数1,2,3表示的是透视是按照基于窗口宽度和高度的45度视角来计算的,参数0.1和参数100是我们场景中所能绘制深度的起点和终点值。
相关文章推荐
- Windows平台下MYSQL破解root密码(忘记root密码的解决方法)
- Windows平台Mysql表名区分大小写的解决方法
- 在vmware esx平台创建windows 2003 server群集时无法找到共享磁盘的解决方法
- QT5.3.1安装成功Failed to create OpenGL context错误解决方法
- Qt使用opengl报错 解决方法
- windows平台下的oracle ORA-01031的解决方法
- windows平台上php程序处理高并发的解决方法
- windows平台 eclipse 中 System.loadLibrary 相关错误及解决方法
- Qt Windows应用程序在MinGW中可运行而双击不能运行解决方法
- QT中使用MySql中文乱码解决方法(windows下)
- 解决新版Qt中不能使用opengl中gluXXX()函数的方法
- C++, Qt Windows关机的时候,阻止其关机或这注销 做其它业务的解决方法
- 嵌入式平台arm linux 之qt 4.5交叉编译到webkit时出错解决方法
- windows下Eclipse+MinGW+Qt+c++配置安装解决方法
- 关于windows环境下QT开发ICE程序无法正确连接类库的解决方法
- Qt调试之:二进制类型x86-windows-msvc2010-pe-32bit调试引擎不可用的解决方法
- windows下Eclipse+MinGW+Qt+c++配置安装解决方法
- 异常:System.InvalidOperationException: This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms 这个实现是不是Windows平台FIPS验证的加密算法。解决方法
- VS2013+openCV3.0无脑配置方法+解决警告问题【windows平台】
- Windows平台 Qt 编译静态库的方法