|
Public Member Functions |
| INT32 | GetBitsPerPixel () |
| | Returns the number of bits per pixel.
|
| MgEnvelope * | GetBounds () |
| | Get the minimum bounding box around the image. The bounds are transformed to the active spatial context.
|
| INT32 | GetDataModelType () |
| | Returns the type of pixel color data (RGB, RGBA, Bitonal, etc.).
|
| INT32 | GetImageXSize () |
| | Gets the size of image file in the horizontal direction in pixels (number of columns).
|
| INT32 | GetImageYSize () |
| | Gets the size of image file in the vertical direction in pixels (number of rows).
|
| MgByte * | GetPalette () |
| MgByteReader * | GetStream () |
| | Get the source of image data. Image data is shipped using a paradigm similar to BLOB I/O. When fetching a raster image the GetStream() method provides a GisIStreamReader from which the client may request the image data. The format of the image data expected is determined by the DataModel property. The data type, bit depth, tiling and organization specify the meaning of the image data. By setting the DataModel property prior to getting a reader for the data, the FDO client application can control the way data is retrieved from the FDO raster subsystem. When a tiled image is fetched, the image data will be tiled by default, unless a spatial query is used that covers a portion of a tile, in which case the image is converted to monolithic form prior to returning to the client. The client may force a monolithic image in the former case by setting the DataModel to monolithic prior to getting the stream reader. Or conversely it can request a re-tiling of the remaining sub-image by setting the DataModel property to tiled (in this case the tile origin is at the new upper left corner of the sub-image). Note that altering the DataModel may have significant performance issues.
|
| bool | IsNull () |
| | Returns true if the MgRaster represents a null value.
|
| void | SetImageXSize (INT32 size) |
| | Sets the size of image file in the horizontal direction in pixels (number of columns). By setting the X and Y image size properties prior to getting a reader for the data, the client application can control the density of pixels fetched by the provider, which may reduce the amount of data shipped by the reader and reduce processing time significantly. For example, a certain query in the coordinate system of the raster object class returns a MgRaster object with image size 12091 by 8043. But the image only needs to be displayed in an area 1167 by 776 on the users monitor (note that the aspect ratios are the same because the query is constructed based on the display area). By setting the image size to these lower values the FDO raster subsystem may be able to use a previously subsampled image where the resolution has been reduced by a factor of 4. So instead of transferring 97MB, it can transfer 6MB (a reduction by 4 in both dimensions reduces the amount of data by a factor of 16) and subsample the image again to the desired resolution in a more timely manner (less data to process means less total time), with no appreciable difference in display quality to the user.
|
| void | SetImageYSize (INT32 size) |
| | Sets the size of image file in the vertical direction in pixels (number of rows). See SetImageXSize.
|
| void | SetNull () |
| | Sets the MgRaster to a null value.
|