您的位置:首页 > 运维架构

《高效学习OpenGL》之点、直线和多边形 glPointSize(),glLineWidth(),glLineStipple(),glPolygonMode(),glPolygonStipple()

2014-02-16 07:07 465 查看
默认情况下,点为一个像素,直线为一个像素的宽度,多边形则被画成实心填充的形式
1.点

glPointSize(GLfloat size);
//设置被渲染点的宽度,以像素为单位,默认为1

2.直线
glLineWidth (GLfloat width);
//设置直线的宽度,默认为1
glGetFloatv(GL_ALIASED_LINE_WIDTH_RANGE);//查询带锯齿直线宽度的范围
glGetFloatv(GL_SMOOTH_LINE_WIDTH_RANGE);//查询带平滑直线宽度的范围
glGetFloatv(GL_SMOOTH_LINE_WIDTH_GRANULARITY);//查询平滑直线粒度的范围


3.点画线
glEnable (GL_LINE_STIPPLE);//打开直线的点画模式
glLineStipple (1, 0x0101);//设置直线的当前点画模式,1为倍数,0x0101为线型


.
4.多边形
glPolygonMode (GLenum face, GLenum mode);
//控制多边形正面和反面的绘图形式,默认情况下face为GL_FRONT_AND_BACK,mode为GL_FILL,即正面和背面都采取填充形式绘制
glFrontFace(GLenum mode);
//控制多边形的正面是如何确定的,默认mode为GL_CCW(顶点为逆时针的表面为正面,GL_CW(顺时针为正面))
glEnable(GL_CULL_FACE);//使剔除生效
glCullFace();//表示参数所设置的多边形在转换到屏幕坐标之前应该被丢弃


5.点画多边形
glEnable (GL_POLYGON_STIPPLE);
glPolygonStipple (fly);//fly为一个指向32*32位图的指针






                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息