随手小代码——绘制花托(轮胎)
来源:互联网 发布:易语言cc攻击器源码 编辑:程序博客网 时间:2024/04/28 09:36
百度文库的一篇文章,介绍了OpenGL超级宝典中经常用到的gltDrawTorus的实现原理,图文并茂,很不错。
原文链接:http://wenku.baidu.com/view/57545ef1fab069dc50220140.html
(本文链接位置:http://blog.csdn.net/wlsgzl/article/details/12835639)
读完这篇文章后,我也着手实现了一下,现贴出我的代码。
void DrawTorus(GLfloat fMajorRadius, GLfloat fMinorRadius, GLint nNumMajor, GLint nNumMinor){GLfloat fr=(fMajorRadius-fMinorRadius)/2;GLfloat fR=fr+fMinorRadius;GLfloat fMajorStep=2.0f*PI/nNumMajor;GLfloat fMinorStep=2.0f*PI/nNumMinor;GLfloat fMajorAngle=0.0f;GLfloat fMajorAngle2=0.0f;GLfloat fMinorAngle=0.0f;GLfloat fMinorAngle2=0.0f;GLfloat fX=0.0f;GLfloat fY=0.0f;GLfloat fZ=0.0f;GLfloat fX2=0.0f;GLfloat fY2=0.0f;GLfloat fZ2=0.0f;glBegin(GL_TRIANGLE_STRIP);for (fMajorAngle=0.0f;fMajorAngle<=2.0*PI;fMajorAngle+=fMajorStep){for (fMinorAngle=0.0f;fMinorAngle<=2.0f*PI;fMinorAngle+=fMinorStep){fX=(fR+fr*cos(fMinorAngle))*cos(fMajorAngle);fY=(fR+fr*cos(fMinorAngle))*sin(fMajorAngle);fZ=fr*sin(fMinorAngle);glVertex3f(fX,fY,fZ);fMajorAngle2=fMajorAngle+fMajorStep;fMinorAngle2=fMinorAngle+fMinorStep;fX2=(fR+fr*cos(fMinorAngle2))*cos(fMajorAngle2);fY2=(fR+fr*cos(fMinorAngle2))*sin(fMajorAngle2);fZ2=fr*sin(fMinorAngle2);glVertex3f(fX2,fY2,fZ2);}}glEnd();}
- 随手小代码——绘制花托(轮胎)
- opengl绘制花托原理
- 随手小代码——约瑟夫出圈问题/约瑟夫环
- Opengl绘制花托(一)
- Opengl绘制花托(二)
- 随手敲代码——IOC猜想
- 随手敲代码——二分法
- 《第一行代码》 随手笔记——第一章
- 随手敲代码——IOC猜想(终极版)
- 随手敲代码——JDK、CGlib动态代理
- Unity Mesh生成图形二---绘制轮胎印,耕地区域
- 随手记——Tomcat配置web应用时需要注意的小问题
- 随手记——Java
- 《第一行代码》 随手笔记——第二章 Activity 活动
- 《第一行代码》 随手笔记——第三章 UI开发的点点滴滴
- 《第一行代码》 随手笔记——第五章 广播机制
- 随手敲代码——删除数组重复元素(最高效版)
- [随手写写] 减少代码的“复制粘贴”——关于函数
- moonseo怎么样?--致我逝去的3年seo青春!
- EasyUi_学习之路_02
- 三维空间异面直线的距离及最近点
- 在ios中集成CKEditor实现富文本编辑
- 逆天的模糊查询
- 随手小代码——绘制花托(轮胎)
- Windows 用来定位 DLL 的搜索路径
- C# Hadoop学习笔记(四)—设计自己的云计算框架
- 【重点】内部类初始化以及访问外部类变量
- 测试
- 你不可能让所有人都喜欢你
- XCODE5中关闭ARC的方法
- inux下的快捷方式图标
- OpenJDK源码研究笔记(三)-RandomAccess等标记接口的作用