#include <GL/glut.h> // 引入OpenGL库
#include <cmath> // 引入数学库
void display()
{
glClear(GL_COLOR_BUFFER_BIT); // 清空颜色缓冲区
glColor3f(1.0, 1.0, 1.0); // 设置绘制颜色为白色
glBegin(GL_LINE_STRIP); // 开始绘制线段
for (float x = -1.0; x <= 1.0; x += 0.01) // 在[-1, 1]范围内以0.01为步长遍历x
{
float y = sin(x * 3.14159); // 计算对应x值的sin值
glVertex2f(x, y); // 绘制顶点
}
glEnd(); // 结束绘制线段
glFlush(); // 刷新绘图命令
}
int main(int argc, char** argv)
{
glutInit(&argc, argv); // 初始化GLUT
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); // 设置显示模式为单缓冲和RGB颜色模式
glutInitWindowSize(400, 400); // 设置窗口大小为400x400像素
glutCreateWindow("Sine Curve"); // 创建窗口并设置标题
glMatrixMode(GL_PROJECTION); // 设置矩阵模式为投影矩阵
glLoadIdentity(); // 重置当前矩阵为单位矩阵
glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0); // 设置正投影的裁剪体积
glutDisplayFunc(display); // 注册绘制函数
glutMainLoop(); // 进入主循环,处理事件
return 0;
}