gpt4 book ai didi

c++ - 如何像这样在 OpenGL 中绘制连接的带状线

转载 作者:可可西里 更新时间:2023-11-01 17:56:12 26 4
gpt4 key购买 nike

我想按以下方式绘制一系列连接线 (GL_LINE_STRIP)。

openGL Strip Lines

我曾尝试自己编写代码,但没有得到想要的结果,所以我来到这里,帮助我找出我错在哪里。这里我只给出我的 draw() 函数。

glBegin(GL_LINE_STRIP);

glVertex2f(-4.00, 0.00);
glVertex2f(-3.00, 2.00);
glVertex2f(-2.00, 0.00);
glVertex2f(-1.00, 2.00);
glVertex2f(0.0, 0.00);
glVertex2f(1.00, 2.00);
glVertex2f(2.00, 0.00);
glVertex2f(3.00, 2.00);
glVertex2f(4.00, 0.00);

glEnd();

最佳答案

在这里完美地工作:

lines

#include <GL/glut.h>

void display()
{
glClear( GL_COLOR_BUFFER_BIT );

glMatrixMode( GL_PROJECTION );
glLoadIdentity();
glOrtho( -6, 6, -6, 6, -1, 1);

glMatrixMode( GL_MODELVIEW );
glLoadIdentity();

glColor3ub( 255, 255, 255 );
glBegin(GL_LINE_STRIP);
glVertex2f(-4.00, 0.00);
glVertex2f(-3.00, 2.00);
glVertex2f(-2.00, 0.00);
glVertex2f(-1.00, 2.00);
glVertex2f(0.0, 0.00);
glVertex2f(1.00, 2.00);
glVertex2f(2.00, 0.00);
glVertex2f(3.00, 2.00);
glVertex2f(4.00, 0.00);
glEnd();

glutSwapBuffers();
}

int main( int argc, char **argv )
{
glutInit( &argc, argv );
glutInitDisplayMode( GLUT_RGBA | GLUT_DOUBLE );
glutInitWindowSize( 600, 600 );
glutCreateWindow( "GLUT" );
glutDisplayFunc( display );
glutMainLoop();
return 0;
}

关于c++ - 如何像这样在 OpenGL 中绘制连接的带状线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17554669/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com