


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
*gl 画球函数:glutSolidSphere(d1,i2,i3); d1-半径 i2-球体围绕经度线分割的数目 i3-球体围绕纬度线分割的数目*C语言中,对于变量的定义,只允许放在函数的开头*glShadeModel(GL_FLAT);*glutWireSphere(2.0f,20,20);绘制线框球体 参数意义同glutsolidsphere;*glutSolidSphere(size); glutWireSphere(size);size-立方体的边长*glutSolidCone(GLdouble radius, GLdouble height, GLint slices, GLint stacks); glutWireCone(GLdouble radius, GLdouble height, GLint slices, GLint stacks);圆锥体 radius-圆锥体基底的半径 height-圆锥体高度 slice-圆锥体围绕z轴的分割数 stacks-沿着z轴的分割数* void glutSolidTorus(GLdouble innerRadius, GLdouble outerRadius, GLint nsides, Glint rings);void glutWireTorus(GLdouble innerRadius, GLdouble outerRadius, GLint nsides, Glint rings);圆环 nsides-沿圆环方向的分割数 rings-圆环的换线数* void glutSolidDodecahedron(void); void glutWireDodecahedron(void); 十二面体 半径根号3* void glutSolidOctahedron(void); void glutWireOctahedron(void); 八面体* void glutSolidTetrahedron(void); void glutWireTetrahedron(void); 四面体 半径根号3* void glutSolidIcosahedron(void); void glutWireIcosahedron(void); 二十面体* void glutSolidTeapot(GLdouble size);void glutWireTeapot(GLdouble size);茶壶常见的OpenGL头文件如下:(Windows系统中可以忽略大小写的区别,我自己也没太注意大小写。同时,文件的路径可能变化,例如不是而是gl.h,具体情况要看你到底把头文件放到哪了):OpenGL所使用的函数和常量声明。:GLU(OpenGL实用库)所使用的函数和常量声明。GLU库属于OpenGL标准的一部分。(以下各种库则不属于):GLAUX(OpenGL辅助库)所使用的函数和常量声明。这个库提供了创建窗口,处理键盘和鼠标事件,设置调色板等OpenGL本身不提供,但在编写OpenGL程序时又经常用到的功能。目前这个库已经过时,只有比较少的编译环境中有提供,例如VC系列。在VC系列编译器中,使用这个头文件之前必须使用#include或者具有类似功能的头文件。:GLUT(OpenGL实用工具包)所使用的函数和常量声明。这个库的功能大致与GLAUX类似,目前许多OpenGL教程使用这个库来编写演示程序。一些编译系统可能不直接提供这个库(例如VC系列),需要单独下载安装。这个头文件自动包含了和,编程时不必再次包含它们。:扩展头文件。因为微软公司对OpenGL的支持不太积极,VC系列编译器虽然有这个头文件,但是里面只有OpenGL1.1版本中所规定的内容,而没有OpenGL1.2及其以后版本。对当前的计算机配置而言,几乎都支持OpenGL1.4版本,更高的则到1.5,2.0,2.1,而VC无法直接使用这些功能。为了解决这一问题,就有了头文件。这个头文件提供了高版本OpenGL所需要的各种常数声明以及函数指针声明。:扩展头文件。与类似,但这个头文件中只提供适用于Windows系统的各种OpenGL扩展所使用的函数和常量,不适用于其它操作系统。glee.h:GLEE开源库的头文件。它的出现是因为虽然可以使用高版本的OpenGL函数,但是使用的形式不太方便。GLEE库则让高版本的OpenGL函数与其它OpenGL函数在使用上同样方便。需要注意的是,这个头文件与是冲突的,在包含glee.h之前,不应该包含。#include#includeglee.h/错误,因为glut.h中含有gl.h,它与glee.h冲突/但是如果把两个include顺序交换,则正确glos.h:虽然这个也时常见到,但我也不知道它到底是什么,可能是与系统相关的各种功能,也可能只是自己编写的一个文件。我曾经看到一个glos.h头文件中只有一句#include。总结起来,绘制顺序就是:首先绘制所有不透明的物体。如果两个物体都是不透明的,则谁先谁后都没有关系。然后,将深度缓冲区设置为只读。接下来,绘制所有半透明的物体。如果两个物体都是半透明的,则谁先谁后只需要根据自己的意愿(注意了,先绘制的将成为“目标颜色”,后绘制的将成为“源颜色”,所以绘制
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论