GetPixelDataInRect¶
- globalmapper.GetPixelDataInRect(GM_LayerHandle_t32 aLayer, GM_PixelRect_t aPixelRect, GM_RasterLayout_t aRasterLayout, int aDataBuf, uint32 aReserved=0) GM_Error_t32[source]¶
- Retrieves a pixel rectangle of raw band values from the supplied image layer defined by the provided layout. - If you call this with 0 for aDataBuf, the aRasterLayout structure will be filled out before GM_Error_InvalidParam is returned, so you can call this before allocation to determine the proper allocation size. - The following aRasterLayout.mFlags are used: - GM_RasterLayout_BGROrder - bands are stored in reverse order. The alpha band is still the last one (if present) 
- GM_RasterLayout_AlphaPresent - an alpha band will be added after the data bands. If there was already a separate alpha channel in the image, it will be one of the data bands and aRasterLayout.mAlphaBandIdx will reference it. Otherwise, a new alpha channel is added where 0 will be stored for invalid pixels, and valid pixels will be 1.0 for float values, or the maximum positive value for int, like 255 for GM_VAL_U8 
- GM_RasterLayout_ReverseRows - last row will be stored first in data buffer 
- GM_RasterLayout_ReverseCols - rows of data will start with the last column 
- GM_RasterLayout_HideProgress - progress will NOT be displayed 
 - Parameters:
- aLayer (GM_LayerHandle_t32) – Layer to get band values from 
- aPixelRect (GM_PixelRect_t) – Rectangle of pixels to extract from layer (use 0 to extract the entire image) 
- aRasterLayout (GM_RasterLayout_t) – Raster layout (some values used if non-zero, like mBytesPerRow, other values filled in) 
- aDataBuf (int) – Buffer that will be filled with the image data. Must be large enough to hold all data. If 0, aRasterLayout will be filled out before return. 
- aReserved (uint32) – Reserved for future use; defaults to 0 
 
- Returns:
- Error Code 
- Return type:
- GM_Error_t32 
 
