我使用以下测试代码在OpenGL中绘制虚线。
glPushAttrib(GL_COLOR_BUFFER_BIT | GL_LINE_BIT | GL_ENABLE_BIT);
glLineWidth(1.4);
glColor3ub(7, 7, 7);
glLineStipple( 1, 0x0F0F );
glEnable( GL_LINE_STIPPLE );
glBegin(GL_LINE_STRIP);
glVertex2d(x0, y0);
glVertex2d(x1, y1);
glEnd();
glPopAttrib()
奇怪的是,当我将线宽设置为小于1.5时,虚线变为实线。当线宽大于或等于1.5时,将按预期方式显示虚线。这是为什么? 这在Ubuntu 12.04上发生。但是这些代码在Windows操作系统上可以正常工作。