OpenGL绘制螺旋
OpenGL draw spiral
下面的代码将在 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
的角度单位是Radians。
下面的代码将在 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
的角度单位是Radians。