Summary
Defines a RasterInfo object that describes a set of raster properties to facilitate the creation of a raster dataset using the Raster class.
Discussion
A RasterInfo object can be created by instantiating it from the RasterInfo class, or by calling a Raster object's getRasterInfo method. When a RasterInfo object is created through a Raster object, its properties are initialized using the Raster object's properties.
A RasterInfo object can be used as the input to the Raster class to create a raster dataset, whose cells can be iterated through and assigned values using a RasterCellIterator object.
Syntax
RasterInfo ()
Method Overview
Method | Explanation |
fromJSONString (json) | Loads properties from a JSON string. |
getBandCount () | Returns the band count property of the RasterInfo object. |
getBlockHeight () | Returns the block height property of the RasterInfo object. |
getBlockWidth () | Returns the block width property of the RasterInfo object. |
getCellSize () | Returns the cell size property of the RasterInfo object. |
getExtent () | Returns the extent property of the RasterInfo object. |
getNoDataValues () | Returns the NoData value property of the RasterInfo object. |
getPixelType () | Returns the pixel type property of the RasterInfo object. |
getSpatialReference () | Returns the spatial reference property of the RasterInfo object. |
setBandCount (band_count) | Sets the band count property. |
setBlockHeight (block_height) | Sets the block height property. |
setBlockWidth (block_width) | Sets the block width property. |
setCellSize (cell_size) | Sets the cell size property. |
setExtent (extent) | Sets the extent property. |
setNoDataValues (nodata_values) | Sets the NoData values property. |
setPixelType (pixel_type) | Sets the pixel type property. |
setSpatialReference (spatial_reference) | Sets the spatial reference property. |
toJSONString () | Returns a JSON representation of the RasterInfo object. |
Methods
fromJSONString (json)
Parameter | Explanation | Data Type |
json | The input JSON string that will be loaded. An input JSON string example: | String |
getBandCount ()
Data Type | Explanation |
Integer | The band count. |
getBlockHeight ()
Data Type | Explanation |
Integer | The block height. |
getBlockWidth ()
Data Type | Explanation |
Integer | The block width. |
getCellSize ()
Data Type | Explanation |
tuple | A tuple whose first element represents mean (average) cell width and second element represents mean cell height. |
getExtent ()
Data Type | Explanation |
Extent | The raster extent. |
getNoDataValues ()
Data Type | Explanation |
Variant | A number (integer or floating point) or a tuple that represents the NoData values for a raster. If the band count is 1, getNoDataValues will return a number. If the band count is greater than 1, getNoDataValues will return a tuple, with each element representing the NoData value for the corresponding band. |
getPixelType ()
Data Type | Explanation |
String | The pixel type. |
getSpatialReference ()
Data Type | Explanation |
SpatialReference | A SpatialReference object representing the raster's spatial reference. |
setBandCount (band_count)
Parameter | Explanation | Data Type |
band_count | The band count. | Integer |
setBlockHeight (block_height)
Parameter | Explanation | Data Type |
block_height | The block height. | Integer |
setBlockWidth (block_width)
Parameter | Explanation | Data Type |
block_width | The block width. | Integer |
setCellSize (cell_size)
Parameter | Explanation | Data Type |
cell_size | The cell size. The first element of the tuple represents the cell width and the second element represents the cell height. | tuple |
setExtent (extent)
Parameter | Explanation | Data Type |
extent | The extent. | Extent |
setNoDataValues (nodata_values)
Parameter | Explanation | Data Type |
nodata_values | A number or a tuple that specifies the NoData values. If a number is specified, it will be used as the NoData value for all bands. If a tuple is specified, each element in the tuple will be interpreted as the NoData value for the corresponding band. The number of elements in the tuple must match the band count. | Variant |
setPixelType (pixel_type)
Parameter | Explanation | Data Type |
pixel_type | The pixel type, such as S32 or F32.
| String |
setSpatialReference (spatial_reference)
Parameter | Explanation | Data Type |
spatial_reference | The spatial reference. | SpatialReference |
toJSONString ()
Data Type | Explanation |
String | A JSON string that represents the RasterInfo object. |
Code sample
Creates a RasterInfo object from the RasterInfo class, and uses it to create a raster dataset.
# Import system modules
import arcpy
# Create raster info object
rasInfo = arcpy.RasterInfo()
# Create a spatial reference object
spRef = arcpy.SpatialReference(32145)
# Create an extent object
ext = arcpy.Extent(471090.082572495, 208342.353396819, 494670.082572495, 231352.353396819, 0, 0, 0, 0, spRef)
# Initialize raster info object properties
# Set the spatial reference property
rasInfo.setSpatialReference(spRef)
# Set the extent property
rasInfo.setExtent(ext)
# Set the cell size property
rasInfo.setCellSize((30, 30))
# Set the pixel type property
rasInfo.setPixelType("S16")
# Create a new raster dataset using the raster info object
outRas = arcpy.Raster(rasInfo)
outRas.save("C:/arcpyExamples/outputs/newras01.tif")
Creates a RasterInfo object from a Raster object, and uses it to create a raster dataset.
# Import system modules
import arcpy
# Create a raster object
inRaster = arcpy.Raster("C:/arcpyExamples/inputs/elevation.tif")
# Get the raster info object
rasInfo = inRaster.getRasterInfo()
# Change some properties for the raster info object
# Change the cell size property
rasInfo.setCellSize((45, 45))
# Change the pixel type property
rasInfo.setPixelType("S32")
# Create a new raster dataset using the raster info object
outRas = arcpy.Raster(rasInfo)
outRas.save("C:/arcpyExamples/outputs/newras02.tif")