OpenGL从1.0开始--绘制二次曲面
来源:互联网 发布:无限极专属网络电视盒 编辑:程序博客网 时间:2024/05/29 11:09
类似规则多面体,GLUT可以绘制球面或其他三维的二次曲面对象,甚至能绘制一个茶壶。同样的这些函数分为两个版本:一个生产线框图,一个把曲面显示为一组填充多边形面片。这两个版本都是将曲面细分成小平面以逼近二次曲面。
主要代码和上一篇相同,我们来看看核心代码段。
glutWireSphere(r,nLongitudes,nLatitudes);//球面线框图,参数分别为半径,经纬度数目glutSolidSphere(r,nLongitudes,nLatitudes);//球面实体图glutWireCone(rBase,height,nLongitudes,nLatitudes);//圆锥线框图glutSolidCone(rBase,height,nLongitudes,nLatitudes);//参数分别为锥底半径、锥高、经纬度数目glutWireTorus(rCrossSection,rAxial,nLongitudes,nLatitudes);//环面glutSolidTorus(rCrossSection,rAxial,nLongitudes,nLatitudes);//参数分别为圆半径、轴半径、经纬度数目glutWireTeapot(size);//三次曲面茶壶glutSolidTeapot(size);//参数为最大半径
GLU也可以生产一些二次曲面。
GLUquadricObj *spherel;//定义一个二次曲面对象spherel=gluNewQuadric();//激活二次曲面绘制器gluQuadricDrawStyle(spherel,GLU_LINE);//用线框模式绘制球面gluSphere(spherel,r,nLongitudes,nLatitudes)://绘制二次曲面,参数为曲面对象、经纬度数目
类似地我们还可以用GLU绘制其他二次曲面。
gluCylinder(quadricName,rBase,rTop,height,nLongitudes,nLatitudes)://圆柱,参数为曲面对象、底部半径、顶部半径、高度、经纬度数目gluDisk(ringName,rInner,rOuter,nRadii,nRings)://圆盘,参数为曲面对象,内环半径、外环半径、网格片数、同心环数
还有其他的函数就不再一一赘述了。我们下面看些示例结果。
球面:
圆锥:
圆柱:
阅读全文
0 0
- OpenGL从1.0开始--绘制二次曲面
- OpenGL二次曲面绘制
- OpenGL从1.0开始--绘制常用统计图
- OpenGL从1.0开始--绘制规则多面体
- OpenGL从1.0开始--光照和表面绘制函数
- OpenGL 二次曲面
- OpenGL二次曲面
- Opengl二次曲面
- android openGL ES2 一切从绘制纹理开始
- android openGL ES2 一切从绘制纹理开始
- 二次曲面的绘制
- 【OpenGL】二次曲面图
- 二次曲面的绘制函数(一)
- 二次曲面的绘制函数(二)
- OpenGL学习笔记:二次曲面--gluQuadric
- OpenGL学习笔记:二次曲面--gluQuadric
- OpenGL从1.0开始--输出图元
- OpenGL从1.0开始--曲线图形
- STM32学习笔记(1):位带操作(Bit_band Operations)
- angularjs的添加和非空判断
- 如何防止手机通过USB连接PC充电时的关机闹钟异常现象?
- C++头文件中<>与""的区别,实例化类的两种方法
- Python中常用的其它基本操作
- OpenGL从1.0开始--绘制二次曲面
- angular事件关键字
- 【Maven】settings.xml详解
- 马尔科夫随机场
- MT5 GATEWAT API是什么鬼 之2
- js 省市二级联动菜单
- Leetcode算法学习日志-309 Best Time to Buy and Sell Stock with Cooldown
- 走进大前端:webApp书城整站开发
- Django系列——创建响应