【发布时间】:2013-12-04 11:53:12
【问题描述】:
我试图在 OpenGl 中使用沿路径等间距的纹理作为虚线绘制虚线。我可以得到一条实线,但这不适用于这个项目。 有人可以帮我指出正确的方向吗?
【问题讨论】:
我试图在 OpenGl 中使用沿路径等间距的纹理作为虚线绘制虚线。我可以得到一条实线,但这不适用于这个项目。 有人可以帮我指出正确的方向吗?
【问题讨论】:
OpenGL 中的点线或虚线称为 stippled。
glPushAttrib(GL_ENABLE_BIT);
# glPushAttrib is done to return everything to normal after drawing
glLineStipple(1, 0xAAAA); # [1]
glEnable(GL_LINE_STIPPLE);
glBegin(GL_LINES);
glVertex3f(-.5,.5,-.5);
glVertex3f(.5,.5,-.5);
glEnd();
glPopAttrib();
0xAAAA 是您要试验的参数。
(来自here)
【讨论】:
最好的方法是使用 glBegin(GL_POINTS);并以线性方式展开点。
【讨论】:
虚线只是一系列共线的线段,它们之间有间隙。如果你想要纹理,你可以发射一堆四边形。您可以控制纹理坐标,使每个短划线都是纹理的一部分,或者每个短划线包含整个纹理,或者您喜欢的任何其他重复模式。
到目前为止,您尝试过什么?显示不起作用的代码及其创建的输出图形。然后解释你想要与众不同的地方。
【讨论】: