ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Core.Data.Raster Namespace / Raster Class / CreateCursor Method
Width of the pixel block in the raster cursor.
Height of the pixel block in the raster cursor.
Example Version

CreateCursor Method
Create a RasterCursor for optimized access to raster pixels. This method must be called on the MCT. Use QueuedTask.Run.
Syntax
public RasterCursor CreateCursor( 
   int blockWidth,
   int blockHeight
)

Parameters

blockWidth
Width of the pixel block in the raster cursor.
blockHeight
Height of the pixel block in the raster cursor.

Return Value

The RasterCursor for optimized access to raster pixels.
Example
Create a raster cursor to iterate through the raster data
await QueuedTask.Run(() =>
{
  // Create a full raster from the raster dataset.
  ArcGIS.Core.Data.Raster.Raster raster = rasterDataset.CreateFullRaster();

  // Calculate size of pixel blocks to process. Use 1000 or height/width of the raster, whichever is smaller.
  var height = raster.GetHeight();
  var width = raster.GetWidth();
  int pixelBlockHeight = height > 1000 ? 1000 : height;
  int pixelBlockWidth = width > 1000 ? 1000 : width;

  // Create the raster cursor using the height and width calculated.
  RasterCursor rasterCursor = raster.CreateCursor(pixelBlockWidth, pixelBlockHeight);

  // Use a do-while loop to iterate through the pixel blocks of the raster using the raster cursor.
  do
  {
    // Get the current pixel block from the cursor.
    using (PixelBlock currentPixelBlock = rasterCursor.Current)
    {
      // Do something with the pixel block...
    }

    // Once you are done, move to the next pixel block.
  }
  while (rasterCursor.MoveNext());
});
Requirements

Target Platforms: Windows 11, Windows 10

ArcGIS Pro version: 3 or higher.
See Also