Skip to content

Commit

Permalink
Use default raster iterator tile size
Browse files Browse the repository at this point in the history
  • Loading branch information
nyalldawson committed Jun 13, 2018
1 parent e45958e commit dcd872b
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 18 deletions.
Expand Up @@ -123,15 +123,13 @@ QVariantMap QgsRasterLayerUniqueValuesReportAlgorithm::processAlgorithm( const Q
qgssize noDataCount = 0;

qgssize layerSize = static_cast< qgssize >( mLayerWidth ) * static_cast< qgssize >( mLayerHeight );
int maxWidth = 4000;
int maxHeight = 4000;
int maxWidth = QgsRasterIterator::DEFAULT_MAXIMUM_TILE_WIDTH;
int maxHeight = QgsRasterIterator::DEFAULT_MAXIMUM_TILE_HEIGHT;
int nbBlocksWidth = std::ceil( 1.0 * mLayerWidth / maxWidth );
int nbBlocksHeight = std::ceil( 1.0 * mLayerHeight / maxHeight );
int nbBlocks = nbBlocksWidth * nbBlocksHeight;

QgsRasterIterator iter( mInterface.get() );
iter.setMaximumTileWidth( maxWidth );
iter.setMaximumTileHeight( maxHeight );
iter.startRasterRead( mBand, mLayerWidth, mLayerHeight, mExtent );

int iterLeft = 0;
Expand Down
10 changes: 0 additions & 10 deletions src/analysis/processing/qgsrasteranalysisutils.cpp
Expand Up @@ -65,12 +65,7 @@ void QgsRasterAnalysisUtils::statisticsFromMiddlePointTest( QgsRasterInterface *
}
polyEngine->prepareGeometry();

const int maxWidth = 4000;
const int maxHeight = 4000;

QgsRasterIterator iter( rasterInterface );
iter.setMaximumTileWidth( maxWidth );
iter.setMaximumTileHeight( maxHeight );
iter.startRasterRead( rasterBand, nCellsX, nCellsY, rasterBBox );

std::unique_ptr< QgsRasterBlock > block;
Expand Down Expand Up @@ -118,12 +113,7 @@ void QgsRasterAnalysisUtils::statisticsFromPreciseIntersection( QgsRasterInterfa
}
polyEngine->prepareGeometry();

const int maxWidth = 4000;
const int maxHeight = 4000;

QgsRasterIterator iter( rasterInterface );
iter.setMaximumTileWidth( maxWidth );
iter.setMaximumTileHeight( maxHeight );
iter.startRasterRead( rasterBand, nCellsX, nCellsY, rasterBBox );

std::unique_ptr< QgsRasterBlock > block;
Expand Down
6 changes: 2 additions & 4 deletions src/analysis/processing/qgsreclassifyutils.cpp
Expand Up @@ -31,12 +31,10 @@ void QgsReclassifyUtils::reclassify( const QVector<QgsReclassifyUtils::RasterCla
QgsRasterDataProvider *destinationRaster, double destNoDataValue, bool useNoDataForMissingValues,
QgsProcessingFeedback *feedback )
{
int maxWidth = 4000;
int maxHeight = 4000;
int maxWidth = QgsRasterIterator::DEFAULT_MAXIMUM_TILE_WIDTH;
int maxHeight = QgsRasterIterator::DEFAULT_MAXIMUM_TILE_HEIGHT;

QgsRasterIterator iter( sourceRaster );
iter.setMaximumTileWidth( maxWidth );
iter.setMaximumTileHeight( maxHeight );
iter.startRasterRead( band, sourceWidthPixels, sourceHeightPixels, extent );

int nbBlocksWidth = static_cast< int >( std::ceil( 1.0 * sourceWidthPixels / maxWidth ) );
Expand Down

0 comments on commit dcd872b

Please sign in to comment.