标签:
glBitmap (width, height, x0, y0, xOffset, yOffset, bitShape);函数中的参数width和height分别给出阵列bitShape的列数和行数。bitShape的每一元素赋值为0或1。值为1表示对应像素用前面设定的颜色显示;否则,对应像素不受该位图影响。(作为一个选项,可使用1表示将指定颜色与存储在刷新缓存中对应位置的颜色值相结合。)参数x0和y0定义了矩形阵列“原点”的位置。原点位置指定为bitShape的左下角,而x0和y0可正可负。另外,需要指定帧缓存中应用图案的位置。该位置称为当前光栅位置(current raster position ),而位图在将原点置于当前光栅位置后显示。赋给xOffset和yOffset的值用做位图显示后更新帧缓存当前光栅位置的坐标位移。
glRasterPos* ()参数和后缀码与glVertex函数中的一样。因此,当前光栅位置在世界坐标系中给出,由观察变换将其变换到屏幕坐标系。在我们的二维例子中,可以直接使用整数屏幕坐标指定当前光栅位置的坐标。当前光栅位置的默认值是世界坐标系中的原点(0, 0, 0)。
GLubyte bitShape [20] = { 0x1c, 0x00, 0x1c, 0x00, 0x1c, 0x00, 0x1c, 0x00, 0x1c, 0x00, 0xff, 0x80, 0x7f, 0x00, 0x3e, 0x00, 0x1c, 0x00, 0x08, 0x00}; glPixelStorei (GL_UNPACK_ALIGNMENT, 1);//Set pixel storage made. glRasterPos2i (30, 40); glBitmap (9, 10, 0.0, 20.0, 15.0, bitShape);bitShape的阵列值从矩形网格的底部开始逐行指定。接着使用OpenGL函数glPixelStorei设定位图的存储模式。该函数中使用参数值1表明数据值用字节边界对齐。glRasterPos用来设定当前光栅位置为(30, 40)。最后,函数glBitmap指定位阵列在阵列bitShape中给出,且该阵列有9列10行。这个阵列的原点坐标在(0.0, 0.0),即在网格的左下角。我们给出坐标位移为(20.0, 15.0),尽管在本例中该位移没有用。
计算机图形学(二)输出图元_14_OpenGL像素阵列函数_1_位图函数
标签:
原文地址:http://blog.csdn.net/heyuchang666/article/details/51484801