我需要画一个很细的圆环。我通过搜索互联网发现的只是功能glutSolidTorus()的形式描述,但是问题可能出在我对他们所说的参数没什么了解。每次我试图通过更改参数来绘制它时,结果都是非常繁琐的。

glutSolidTorus(1.0f, 0.005f, 32, 32);


我认为1单位是总圆环半径,而横截面(胖或薄确定)半径是0.005单位。当然,我错了。有人可以给我解释一下问题和解决方法吗?

最佳答案

http://www.opengl.org/documentation/specs/glut/spec3/node84.html
我注意到以下内容:

void glutSolidTorus(GLdouble innerRadius,
                    GLdouble outerRadius,
                    GLint nsides, GLint rings);


圆环的形状是内半径大于外半径。尝试切换它们,看看是否正是您想要的。

lutSolidTorus(0.005f, 1.00f, 32, 32);


圆环的厚度由第一个参数innerRadius定义,而第二个定义圆环的扩展宽度。

编辑:
请访问下方的链接。

10-04 14:16