Table of Contents

## Name

glPolygonStipple - set the polygon stippling pattern

## C Specification

void glPolygonStipple( const GLubyte *mask )

eqn not supported

## Parameters

mask
  Specifies a pointer to a $32 ~times~ 32$ stipple pattern that will be unpacked from memory in the same way that glDrawPixels unpacks pixels.

## Description

Polygon stippling, like line stippling (see glLineStipple), masks out certain fragments produced by rasterization, creating a pattern. Stippling is independent of polygon antialiasing.

mask is a pointer to a $32 ~times~ 32$ stipple pattern that is stored in memory just like the pixel data supplied to a glDrawPixels call with height and width both equal to 32, a pixel of GL_COLOR_INDEX, and data type of GL_BITMAP. That is, the stipple pattern is represented as a $32 ~times~ 32$ array of 1-bit color indices packed in unsigned bytes. glPixelStore parameters like GL_UNPACK_SWAP_BYTES and GL_UNPACK_LSB_FIRST affect the assembling of the bits into a stipple pattern. Pixel transfer operations (shift, offset, pixel map) are not applied to the stipple image, however.

To enable and disable polygon stippling, call glEnable and glDisable with argument GL_POLYGON_STIPPLE. Polygon stippling is initially disabled. If it's enabled, a rasterized polygon fragment with window coordinates $x sub w$ and $y sub w$ is sent to the next stage of the GL if and only if the ($x sub w~roman mod~32$)th bit in the ($y sub w~roman mod~32$)th row of the stipple pattern is 1 (one). When polygon stippling is disabled, it is as if the stipple pattern consists of all 1's.

## Errors

GL_INVALID_OPERATION is generated if glPolygonStipple is executed between the execution of glBegin and the corresponding execution of glEnd.

## Associated Gets

glGetPolygonStipple
glIsEnabled with argument GL_POLYGON_STIPPLE

## See Also

glDrawPixels(3G) , glLineStipple(3G) , glPixelStore(3G) , glPixelTransfer(3G)

Table of Contents

- Name
- C Specification
- Parameters
- Description
- Errors
- Associated Gets
- See Also