下面的代码将在openGL上创建一个新的圆,但我如何让它画螺旋而不是圆?
glBegin(GL_POINTS);
for (float angle = 0; angle < 360; angle += 1)
{
x = 50 * cos(angle);
y = 50 * sin(angle);
glVertex2f(x, y);
}
glEnd();
您需要增加循环中的半径。例如:
float radius = 0.0f;
glBegin(GL_POINTS);
for (float angle = 0; angle < 1440; angle += 1)
{
x = cos(angle * M_PI / 180) * radius;
y = sin(angle * M_PI / 180) * radius;
radius += 0.1f;
glVertex2f(x, y);
}
glEnd();
注意,sin
和cos
的角度单位为弧度。