Class: QgsRasterIterator¶
-
class
qgis.core.
QgsRasterIterator
(input: QgsRasterInterface)¶ Bases:
sip.wrapper
Constructor for QgsRasterIterator, iterating over the specified
input
raster source.QgsRasterIterator(QgsRasterIterator)
Iterator for sequentially processing raster cells.
Enums
Methods
Returns the input raster interface which is being iterated over.
Returns the minimum tile width returned during iteration.
Returns the maximum tile width returned during iteration.
Fetches details of the next part of the raster data.
Fetches next part of raster data, caller takes ownership of the block and caller should delete the block.
Sets the minimum tile height returned during iteration.
Sets the maximum tile width returned during iteration.
Start reading of raster band.
Cancels the raster iteration and resets the iterator.
Signals
Attributes
-
DEFAULT_MAXIMUM_TILE_HEIGHT
= 2000¶
-
DEFAULT_MAXIMUM_TILE_WIDTH
= 2000¶
-
input
(self) → QgsRasterInterface¶ Returns the input raster interface which is being iterated over.
-
maximumTileHeight
(self) → int¶ Returns the minimum tile width returned during iteration.
See also
See also
-
maximumTileWidth
(self) → int¶ Returns the maximum tile width returned during iteration.
See also
See also
-
next
(self, bandNumber: int) → Tuple[bool, int, int, int, int, QgsRectangle]¶ Fetches details of the next part of the raster data. This method does NOT actually fetch the raster data itself, rather it calculates and iterates over the details of the raster alone.
It’s useful for iterating over several layers using a target “reference” layer. E.g. summing the pixels in n rasters whilst aligning the result to a reference layer which is not being summed.
Note that calling this method also advances the iterator, just like calling readNextRasterPart().
- Parameters
bandNumber – band to read
rows – number of rows on output device
topLeftColumn – top left column
topLeftRow – top left row
blockExtent – exact extent of returned raster block
- Returns
false if the last part was already returned
columns: number of columns on output device
New in version 3.6.
-
readNextRasterPart
(self, bandNumber: int) → Tuple[bool, int, int, QgsRasterBlock, int, int]¶ Fetches next part of raster data, caller takes ownership of the block and caller should delete the block.
- Parameters
bandNumber – band to read
nCols – number of columns on output device
nRows – number of rows on output device
block – address of block pointer
topLeftCol – top left column
topLeftRow – top left row
- Returns
false if the last part was already returned
-
setMaximumTileHeight
(self, h: int)¶ Sets the minimum tile height returned during iteration.
See also
See also
-
setMaximumTileWidth
(self, w: int)¶ Sets the maximum tile width returned during iteration.
See also
See also
-
startRasterRead
(self, bandNumber: int, nCols: int, nRows: int, extent: QgsRectangle, feedback: QgsRasterBlockFeedback = None)¶ Start reading of raster band. Raster data can then be retrieved by calling readNextRasterPart until it returns false.
- Parameters
bandNumber – number of raster band to read
nCols – number of columns
nRows – number of rows
extent – area to read
feedback – optional raster feedback object for cancellation/preview. Added in QGIS 3.0.
-
stopRasterRead
(self, bandNumber: int)¶ Cancels the raster iteration and resets the iterator.
-