DevIL Documentation Home | Previous | Next

ilCopyPixels

The ilCopyPixels function copies a block of pixels to a user-defined buffer.

ILvoid ilCopyPixels(
  ILuint XOff,  ILuint YOff,  ILuint ZOff,  ILuint Width,  ILuint Height,  ILuint Depth,  ILenum Format,  ILenum Type,  ILvoid *Data);


Parameters

XOff
Where to begin copying pixels from in the x direction.

YOff
Where to begin copying pixels from in the y direction.

ZOff
Where to begin copying pixels from in the z direction.

Width
How many pixels to copy in the x direction.

Height
How many pixels to copy in the y direction.

Depth
How many pixels to copy in the z direction.

Format
The desired format the output should be.

Type
The desired type the output should be.

Data
User-defined buffer to copy the image data to.


Remarks

ilCopyPixels has very simple behaviour. It simply copies a block of pixels from the current image to the Data buffer. XOff, YOff and ZOff can be used to skip a certain number of pixels in each respective direction. If XOff + Width, YOff + Height and/or ZOff + Depth is greater than the current image's width, height or depth, only the current image's width, height or depth number of pixels will be copied to Data.

Error Codes

IL_ILLEGAL_OPERATION - There is currently no image bound. Use ilGenImages and ilBindImage before calling this function.
IL_INVALID_CONVERSION - Format did not match the current image's format. Use ilGetInteger to obtain the current image's format.

See Also

ilGenImages, ilBindImage, ilGetInteger