Skip to content

Commit

Permalink
-Set default contrast enhancement to STRETCH_TO_MIN_MAX
Browse files Browse the repository at this point in the history
git-svn-id: http://svn.osgeo.org/qgis/trunk@7952 c8812cc2-4d05-0410-92ff-de0c093fc19c
  • Loading branch information
ersts committed Jan 14, 2008
1 parent 3f83f1f commit 4c31165
Showing 1 changed file with 21 additions and 1 deletion.
22 changes: 21 additions & 1 deletion src/core/raster/qgsrasterlayer.cpp
Expand Up @@ -392,7 +392,6 @@ QgsRasterLayer::QgsRasterLayer(QString const & path, QString const & baseName)
{
mUserDefinedRGBMinMaxFlag = false; //defaults needed to bypass stretch
mUserDefinedGrayMinMaxFlag = false;
setContrastEnhancementAlgorithm(QgsContrastEnhancement::NO_STRETCH); //defaults needed to bypass stretch

mRasterShader = new QgsRasterShader();

Expand Down Expand Up @@ -579,6 +578,8 @@ bool QgsRasterLayer::readFile( QString const & fileName )
mContrastEnhancementList.append(myContrastEnhancement);
}

setContrastEnhancementAlgorithm(QgsContrastEnhancement::STRETCH_TO_MINMAX); //defaults - Needs to be set after the Contrast list has been build

//decide what type of layer this is...
//note that multiband images can have one or more 'undefindd' bands,
//so we must do this check first!
Expand Down Expand Up @@ -1440,6 +1441,12 @@ void QgsRasterLayer::drawSingleBandGray(QPainter * theQPainter, QgsRasterViewPor
setMaximumValue(theBandNo, myGrayBandStats.mean + (mStandardDeviations * myGrayBandStats.stdDev));
setMinimumValue(theBandNo, myGrayBandStats.mean - (mStandardDeviations * myGrayBandStats.stdDev));
}
else if(QgsContrastEnhancement::NO_STRETCH != getContrastEnhancementAlgorithm() && !mUserDefinedGrayMinMaxFlag)
{
myGrayBandStats = getRasterBandStats(theBandNo);
setMaximumValue(theBandNo, myGrayBandStats.maxVal);
setMinimumValue(theBandNo, myGrayBandStats.minVal);
}

QgsDebugMsg("Starting main render loop");
// print each point in myGdalScanData with equal parts R, G ,B o make it show as gray
Expand Down Expand Up @@ -2069,6 +2076,19 @@ void QgsRasterLayer::drawMultiBandColor(QPainter * theQPainter, QgsRasterViewPor
setMaximumValue(myBlueBandNo, myBlueBandStats.mean + (mStandardDeviations * myBlueBandStats.stdDev));
setMinimumValue(myBlueBandNo, myBlueBandStats.mean - (mStandardDeviations * myBlueBandStats.stdDev));
}
else if(QgsContrastEnhancement::NO_STRETCH != getContrastEnhancementAlgorithm() && !mUserDefinedRGBMinMaxFlag)
{
myRedBandStats = getRasterBandStats(myRedBandNo);
myGreenBandStats = getRasterBandStats(myGreenBandNo);
myBlueBandStats = getRasterBandStats(myBlueBandNo);

setMaximumValue(myRedBandNo, myRedBandStats.maxVal);
setMinimumValue(myRedBandNo, myRedBandStats.minVal);
setMaximumValue(myGreenBandNo, myGreenBandStats.maxVal);
setMinimumValue(myGreenBandNo, myGreenBandStats.minVal);
setMaximumValue(myBlueBandNo, myBlueBandStats.maxVal);
setMinimumValue(myBlueBandNo, myBlueBandStats.minVal);
}

//Read and display pixels
double myRedValue = 0.0;
Expand Down

0 comments on commit 4c31165

Please sign in to comment.