Retrieve the raw memory pointer to the data block of a mosaic tile.
Declaration | Zeolite.h |
---|---|
Implementation | Zeolite.cpp |
void* zmap_tile_GetDataPtr(void* hTile);
Name | Type | Comment |
---|---|---|
hTile | void* | A handle to a mosaic tile, as retrieved by the zmap_GetMosaicTile function. |
A null pointer if:
A valid non-null pointer otherwise.
Pixels are ordered in rows going east-to-west, with rows ordered south to north. To convert from x/y coordinate to memory offset, use the following formula:
long offset = (x + TileSize * y) * PixelMemSize;
…where PixelMemSize is the size in memory of one pixel (see zmap_GetPixelSize).
To convert from memory offsets to pixel coordinates, use the following formulae:
long x = (offset/PixelMemSize)%TileSize; long y = (offset/PixelMemSize)/TileSize;
It is recommended that, wherever possible, the zmap_tile_GetPixel /zmap_tile_SetPixel functions are used for accessing tile data, instead of direct memory access with zmap_tile_GetDataPtr
. Those functions include coordinate checking and memory protection, as well has handling mip-mapping and mosaic tile cache loading/saving automatically.