glRasterPos2i()函数用法
时间: 2023-07-29 14:07:10 浏览: 170
glRasterPos2i()函数是OpenGL中的一个函数,用于设置当前光栅位置。它的原型如下:
```c
void glRasterPos2i(GLint x, GLint y);
```
其中,x和y分别为当前光栅位置的x和y坐标,它们的数据类型为GLint。
glRasterPos2i()函数的工作方式与glVertex()函数类似,它并不是绘制图形的函数,而是用于告诉OpenGL当前光栅位置的函数。在调用其他绘制函数之前,需要先调用glRasterPos2i()函数设置当前光栅位置。
需要注意的是,glRasterPos2i()函数不会自动将坐标转换为屏幕坐标系,因此需要在调用该函数之前进行坐标变换。
下面是一个简单的例子,演示了如何使用glRasterPos2i()函数:
```c
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glTranslatef(-1.0f, -1.0f, 0.0f);
glRasterPos2i(100, 100);
glDrawPixels(width, height, GL_RGB, GL_UNSIGNED_BYTE, pixels);
```
在这个例子中,首先调用了glMatrixMode()函数和glLoadIdentity()函数,将模型视图矩阵设置为单位矩阵。然后调用glTranslatef()函数将坐标系平移,使得左下角的点对应屏幕坐标系的原点。接着调用glRasterPos2i()函数设置当前光栅位置为(100, 100)。最后调用glDrawPixels()函数绘制像素数据。