ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Core.Data.Raster Namespace / RasterCursor Class / Current Property
Example Version

Current Property (RasterCursor)
Gets the current PixelBlock of this RasterCursor. This method must be called on the MCT. Use QueuedTask.Run.
Syntax
public PixelBlock Current {get;}
Remarks
The current pixel block is null when MoveNext returns false).
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