使用 GLU 在 C++ 中绘制四分之一圆

Drawing a quarter circle in c++ using GLU

// baseballField
glColor3f(0.22, 0.36, 0.20);

GLUquadricObj *myobject;
myobject = gluNewQuadric();
glTranslatef(120.0, 655.0, 0.0);
gluDisk(myobject, 0.0, 40.0, 60, 4);

我试图通过创建一个四分之一圆(最好是右上角四分之一)来模拟棒球场的形状。上面的代码成功地绘制了具有正确大小、位置和颜色的圆。但是,它是整个圆圈。如果有人有任何见解,请告诉我。提前致谢!

void gluDisk(   
    GLUquadric* quad,
    GLdouble inner,
    GLdouble outer,
    GLint slices,
    GLint loops);

磁盘围绕 z 轴细分为切片(如披萨切片)

尝试使用切片,我认为 2 表示半圆。

[edit] 也不要忘记循环。"and also about the z axis into rings (as specified by slices and loops, respectively)."

坚持使用 GLU 调用,您正在寻找的是 gluPartialDisk()。对于四分之一圆:

gluPartialDisk(myobject, 0.0, 40.0, 60, 4, 0.0, 90.0);

最后两个参数指定起始角和扫描角,均以度为单位。

请注意,GLU 已被严重弃用,并且仅适用于旧版本的 OpenGL。有关显示如何使用更新版本的 OpenGL 绘制圆的示例代码,请参见我的回答示例:How to draw a circle using VBO in ES2.0.