glScissor 函数

glScissor 函数定义剪刀框。

语法

void WINAPI glScissor(
   GLint   x,
   GLint   y,
   GLsizei width,
   GLsizei height
);

参数

x

x (垂直轴) 剪刀框左下角的坐标。

y

y (剪刀框左下角的水平轴) 坐标。 x 和 y 共同指定剪刀框的左下角。 最初 (0,0) 。

width

剪刀框的宽度。

height

剪刀盒的高度。 当 OpenGL 上下文首次附加到窗口时,宽度高度将设置为该窗口的尺寸。

返回值

此函数不返回值。

错误代码

glGetError 函数可以检索以下错误代码。

名称 含义
GL_INVALID_VALUE
宽度高度为负值。
GL_INVALID_OPERATION
在对 glBegin 的调用和对 glEnd 的相应调用之间调用了函数。

备注

glScissor 函数在窗口坐标中定义一个名为剪刀框的矩形。 前两个参数 xy 指定框的左下角。 宽度高度参数指定框的宽度和高度。

使用 glEnableglDisable 和参数GL_SCISSOR_TEST启用和禁用剪刀测试。 启用剪刀测试时,只能通过绘制命令修改剪刀框中的像素。 窗口坐标在 framebuffer 像素的共享角处具有整数值,因此 glScissor (0,0,1,1) 只允许修改窗口中的左下角像素, glScissor (0,0,0,0) 不允许修改窗口中的所有像素。

禁用剪刀测试时,就好像剪刀框包含整个窗口一样。

以下函数检索与 glScissor 相关的信息:

带参数GL_SCISSOR_BOX的 glGet

glIsEnabled with argument GL_SCISSOR_TEST

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Gl.h

Opengl32.lib
DLL
Opengl32.dll

另请参阅

glBegin

glEnable

glEnd

glIsEnabled

glViewport