This document is archived and information here might be outdated. Recommended version. |
An in-memory representation of a dynamic raster that can perform resampling and reprojection.
The Raster object is a transient representation of raster data that performs resampling and reprojection. It can be modified without affecting the source data. This allows the raster to represent what you want, as you may set a transformation, a pixel filter on a raster or specify a projection, extent, and cell size into which the input data will be transformed. This makes the raster quite useful for performing display or analysis in a coordinate system different from that which is stored in the raster dataset.
Because of the transient nature of the raster, any modifications that are made to this object will be lost when the object is released. The modified Raster can be persisted to another raster dataset on disk or in a geodatabase using ISaveAs or IRasterBandCollection interface.
Although the Raster object is always transient in nature, it must be associated with one or more raster bands, which provide a source for data to be read through the raster. As such, the Raster is most easily understood as a vehicle to provide resampling, projection, and data type conversion from one or more raster bands to a desired output coordinate system.
A Raster can be created in three ways:
1. Get from a RasterLayer using IRasterLayer::Raster
2. Create from a raster dataset using either :IRasterDataset::CreateDefaultRaster or IRasterDataset2::CreateFullRaster
3. Cocreate a Raster and append raster bands using IRasterBandCollection interface.
Use the ISupportErrorInfo method InterfaceSupportsErrorInfo to determine if the object supports extended error information. If the object supports extended error info, VC++ developers should use the OLE/COM IErrorInfo interface to access the ErrorInfo object. Visual Basic developers should use the global error object Err to retrieve this extended error information.
Interfaces | Description |
---|---|
IClone (esriSystem) | Provides access to members that control cloning of objects. |
IGeoDataset (esriGeoDatabase) | Provides access to members that provide information about a Geographic Dataset. |
IPixelOperation | Provides access to members that control a pixel operation on a raster. |
IRaster (esriGeoDatabase) | Provides access to members that control an in-memory raster. |
IRaster2 | Provides access to members that control a raster. |
IRasterAnalysisProps | Provides access to members that control the properties for raster analysis. |
IRasterBandCollection | Provides access to members that control a collection of RasterBands. |
IRasterDefaultProps | Provides access to members that control the default raster properties. |
IRasterEdit | Provides access to members that control pixel block level editing operations. |
IRasterProps | Provides access to members that control the most common raster properties. |
IRasterResamplingControl | Provides access to members that provides raster resampling control. |
IRawBlocks | Provides access to members that control raw pixel block access. |
ISaveAs (esriGeoDatabase) | Provides access to methods for saving as a new Dataset. |
ISaveAs2 (esriGeoDatabase) | Provides access to methods for saving as a new Raster Dataset. |
ISupportErrorInfo (esriSystem) |
IRaster Interface | IRasterProps Interface | IRasterBandCollection Interface