绘制圆形轮廓的百分比

Ben*_*Ben 2 c++ opengl

在OpenGL中,我怎么能得出一个给定的百分比的的轮廓圆的?我该如何控制轮廓的厚度?

示例:如果百分比为100,则应绘制整圆的轮廓.如果百分比为50,则应绘制半圆的轮廓.

我已经尝试过以下方法,但问题在于它完成了lineloop,导致连接圆形轮廓的起点和终点的线.另外,它不会让我改变轮廓的厚度.

glBegin(GL_LINE_LOOP);

    for (int i=0; i < (360/10*percent/10); i++) {
        float degInRad = i*DEG2RAD;
        glVertex2f(a+cos(degInRad)*r,b+sin(degInRad)*r);
    }

glEnd();
Run Code Online (Sandbox Code Playgroud)

我很想让我的GL_POINTS圈起来,但我想知道是否有更好的方法?

Stu*_*rey 5

替换GL_LINE_LOOPGL_LINE_STRIP,这样就不会连接最后和第一个顶点.使用此glLineWidth()功能定义线条粗细.