GLの関数と簡単な数学を使ったサンプルで、実行結果は画像のようになります。
#include
#include
#include
void draw_line( int x1, int y1, int x2, int y2, float r, float g, float b, float w )
{
glColor3f( r,g,b );
glLineWidth( w );
glBegin( GL_LINES );
glVertex2f( x1, y1 );
glVertex2f( x2, y2 );
glEnd();
glFlush();
}
void display( void )
{
int i;
glClear( GL_COLOR_BUFFER_BIT );
for( i = 0;i <= 200;i += 10 )
{
draw_line( 100, 250 - i, 100 + i, 50, 1.0, 0.0, 0.0, 1.0 );
}
glFlush();
}
void reshape( int w, int h )
{
glViewport( 0, 0, w, h );
glLoadIdentity();
gluOrtho2D( 0, w, 0, h );
}
int main( int argc, char *argv[] )
{
glutInit( &argc, argv );
glutInitWindowSize( 400, 300 );
glutCreateWindow( "Test1-1" );
glutDisplayFunc( display );
glutReshapeFunc( reshape );
glClearColor( 1.0, 1.0, 1.0, 1.0 );
glutMainLoop();
return 0;
}