2013-07-09 5 views
8

次のように一連の接続線(GL_LINE_STRIP)を描きたいと思います。OpenGLでこのように接続されたストリップ線を描く方法

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(); 
+0

をあなたは今何を見ていますか?描画する前に 'glOrtho(-4.0、+ 4.0、-4.0、+ 4.0、-1.0、+ 1.0)'を試してください。 –

答えて

5

完全にここにワーキン:

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; 
} 
+0

ありがとう、私はglOrtho(-6,6、-6、6、-1、1)が欠けていたと思う。 – user437641

関連する問題