3、ows.h>#includeGLuintLine;voidInitial(void){glClearColor(1.0f,1.0f,1.0f,1.0f);Line=glGenLists(1);glNewList(Line,GL_COMPILE);/************實(shí)線***************/glColor3f(0.0,1.0,0.0);glLineWidth(3);glTranslatef(-20.0,20.0,0.0);glBegin(GL_LINES);//實(shí)線glV
4、ertex2i(-10,5);glVertex2i(40,5);glEnd();/****************虛線*******************/glColor3f(0.0,0.0,0.0);//更改顏色glEnable(GL_LINE_STIPPLE);//聲明線型為虛線;glLineStipple(3,0x0101);//設(shè)定線型glLineWidth(2);//設(shè)定線寬glBegin(GL_LINES);glVertex2i(-20,-15);glVertex2i(50,-15);glEnd
5、();/**************點(diǎn)劃線********************/glColor3f(0.0,0.0,1.0);glLineStipple(3,0x0101);//設(shè)定線型glLineWidth(5);//設(shè)定線寬,先畫點(diǎn)glBegin(GL_LINES);glVertex2i(-20,-35);glVertex2i(50,-35);glEnd();glLineStipple(6,0x0606);//設(shè)定線型glLineWidth(2);//設(shè)定線寬,再畫線glBegin(GL_LINES)
6、;glVertex2i(-20,-35);glVertex2i(50,-35);glEnd();glEndList();}voidChangeSize(intw,inth){glViewport(0,0,w,h);glMatrixMode(GL_PROJECTION);glLoadIdentity();gluOrtho2D(-70.0f,70.0f,-70.0f,70.0f);}voidDisplay(void){glClear(GL_COLOR_BUFFER_BIT);glMatrixMode(GL_MOD
7、ELVIEW);glLoadIdentity();glTranslatef(0.0,0.0,0.0);glCallList(Line);glFlush();}intmain(intargc,char*argv[]){glutInit(&argc,argv);glutInitDisplayMode(GLUT_SINGLE
8、GLUT_RGB);glutInitWindowSize(800,600);glutInitWindowPosition(200,200);glutCreateWindow("OpenGL直線
9、、點(diǎn)畫線、虛線——姓名:殷悅——學(xué)號(hào):");glutDisplayFunc(Display);glutReshapeFunc(ChangeSize);Initial();glutMainLoop();return0;}一.程序調(diào)試及運(yùn)行結(jié)果的自我分析與自我評(píng)價(jià)代碼中調(diào)用了畫線函數(shù)的兩個(gè)不同模式,繪制實(shí)線模式(GL_LINES)和繪制虛線模式(GL_LINE_STIPPLE)。點(diǎn)劃線是由兩條虛線拼合而