opengl 实体和网格绘图函数(基础)
来源:互联网 发布:淘宝刷好评犯法吗 编辑:程序博客网 时间:2024/04/28 16:20
GLUT工具箱提供几种图形3维图形的函数:
void glutSolidSphere(GLdouble radius, GLint slices, GLint stacks); 实心球
void glutSolidCube(GLdouble size); 实心立方体
GLint nsides, GLint rings); 丝状花环
void glutSolidTorus(GLdouble innerRadius, GLdouble outerRadius,
GLint nsides, GLint rings); 实心花环
void glutSolidIcosahedron(void); 实心20面体
void glutSolidOctahedron(void); 实心8面体
void glutSolidTetrahedron(void); 实心4面体
void glutSolidDodecahedron(GLdouble radius); 实心12面体
GLint stacks); 丝状圆锥体
void glutSolidCone(GLdouble radius, GLdouble height, GLint slices,
GLint stacks); 实心圆锥体
void glutSolidTeapot(GLdouble size); 实心茶壶
如果需要用到长方体那就用glScalef(x,y,z); 做自己想要的长方体,这儿的x,y,z分别对应x,y,z轴的缩放比例
不过居然没有看到圆柱体的函数。在网上搜索不少人说到的都是用一个aux开头的辅助函数库。但是这有个很大的缺陷,已经被GLUT库代替了
举个创建2次对象的简单例子:
//创建一个半径为5,在经线和纬线方向细分数为10的球体
GLUquadricObj *pobj;
pobj=gluNewQuadric();
gluQuadricDrawStyle(pobj,GLU_LINE);//确定几何体的绘制模式(GLU_LINE)
gluSphere(pobj,5,10,10);创建圆环盘,innerRadius,outerRadius分别指定了内径和外径创建圆柱体创建球体
下面是几个用于创建简单的2次曲面的GLU函数:
GLUquadricObj* gluNewQuadric();
//创建一个新的2次曲面对象,并返回一个指向该对象的指针
void gluDeleteQuadric(GLUquadricObj*);
//删除又2次对象指针指定的2次曲面
void gluSphere(GLUquadricObj* pobj,GLdouble radius,GLint silces,GLint stacks);
//
void gluCylinder(GLUquadricObj* pobj,GLdouble baseRadius,GLdouble topRadius,GLint slices,GLint stacks);
//
void gluDisk(GLUquadricObj* pobj,GLdouble innerRadius,GLdouble outerRadius,GLint slices,GLint stacks);
//
下面几个是创建GLUT对象的函数,是对GLU的补充
void glutWireSphere(GLdouble radius,GLint slices,GLint stacks);
//创建线框球体
void glutSolidSphere(GLdouble radius,GLint slices,GLint stacks);
//创建实心球体
void glutWireCone(GLdouble baseRadius,GLdouble height,GLint slices,GLint stacks);
void glutSolidCone(GLdouble baseRadius,GLdouble height,GLint slices,GLint stacks);
void glutWireTorus(GLdouble innerRadius,GLdouble outerRadius,GLint slices,GLint stacks);
void glutSolidTorus(GLdouble innerRadius,GLdouble outerRadius,GLint slices,GLint stacks);
仔细搜索了一下,找到了比较详细的介绍
- opengl 实体和网格绘图函数(基础)
- OpenGL ES 绘图基础
- OpenGL绘图函数
- OPenGL常用绘图函数
- OpenGL基础图形编程 - OpenGL数据类型和函数名
- OpenGL基础图形编程 - OpenGL数据类型和函数名
- Quartz和OpenGL绘图-iphone学习日记(一)
- Android OpenGL ES 绘图 -- 基础元素
- OmniGraffle (三)基础绘图和模具
- OpenGL基础函数
- OpenGL 基础函数讲解
- opengl基础函数解释
- OpenGL填充非凸多边形(网格化)
- Matplotlib基础绘图函数示例
- cocos2D-X源码分析之从cocos2D-X学习OpenGL(20)----模型,网格和材质
- opengl绘图
- 使用OpenGL ES和GLKit绘图
- 绘图 网格 直线 正弦
- cocos2d-x屏幕适配原理分析
- 一键构造你的博客目录
- 应用Libvirt连接KVM虚拟化平台
- Double Delete caused by 2 shared library has global object of same name, 2) 1st glance
- 【模板】后缀数组
- opengl 实体和网格绘图函数(基础)
- linux驱动--阻塞和非阻塞 I/O
- 部署jenkins是遇到的问题汇总。
- EventListenerMap源码分析
- 什么是URL Rewrite?URL Rewrite有什么用?
- JS----div 层图片的拖放
- 黑马程序员------static,内部类的应用
- 【Android开发学习12】Android OpenGL ES 旋转glRotatef
- socket客户端demo