@@ -17,7 +17,9 @@ class originally created circa 2004 by T.Sutton, Gary E.Sherman, Steve Halasz
17
17
* (at your option) any later version. *
18
18
* *
19
19
***************************************************************************/
20
-
20
+
21
+ #include " qgslogger.h"
22
+
21
23
#include " qgscontrastenhancement.h"
22
24
#include " qgscontrastenhancementfunction.h"
23
25
#include " qgslinearminmaxenhancement.h"
@@ -26,7 +28,9 @@ class originally created circa 2004 by T.Sutton, Gary E.Sherman, Steve Halasz
26
28
27
29
QgsContrastEnhancement::QgsContrastEnhancement (QgsRasterDataType theDataType)
28
30
{
29
-
31
+ #ifdef QGISDEBUG
32
+ QgsDebugMsg (" QgsContrastEnhancement::QgsContrastEnhancement() called" );
33
+ #endif
30
34
mLookupTable = 0 ;
31
35
mContrastEnhancementFunction = 0 ;
32
36
mEnhancementDirty = false ;
@@ -166,6 +170,12 @@ bool QgsContrastEnhancement::generateLookupTable()
166
170
if (QGS_Byte != mRasterDataType && QGS_UInt16 != mRasterDataType && QGS_Int16 != mRasterDataType ) { return false ; }
167
171
if (!mLookupTable ) { return false ; }
168
172
173
+ #ifdef QGISDEBUG
174
+ QgsDebugMsg (" QgsContrastEnhancement::generateLookupTable() - building lookup table" );
175
+ QgsDebugMsg (" ***MinimumValue : " + QString::number (mMinimumValue ));
176
+ QgsDebugMsg (" ***MaximumValue : " + QString::number (mMaximumValue ));
177
+ QgsDebugMsg (" ***mLookupTableOffset : " + QString::number (mLookupTableOffset ));
178
+ #endif
169
179
for (int myIterator = 0 ; myIterator < mRasterDataTypeRange ; myIterator++)
170
180
{
171
181
mLookupTable [myIterator] = mContrastEnhancementFunction ->enhanceValue ((double )myIterator - mLookupTableOffset );
@@ -198,6 +208,9 @@ bool QgsContrastEnhancement::isValueInDisplayableRange(double theValue)
198
208
*/
199
209
void QgsContrastEnhancement::setContrastEnhancementAlgorithm (CONTRAST_ENHANCEMENT_ALGORITHM theAlgorithm, bool generateTable)
200
210
{
211
+ #ifdef QGISDEBUG
212
+ QgsDebugMsg (" QgsContrastEnhancement::setContrastEnhancementAlgorithm() called algorithm: " + QString::number ((int )theAlgorithm) +" generate lookup table: " + QString::number ((int )generateTable));
213
+ #endif
201
214
if (theAlgorithm != mContrastEnhancementAlgorithm )
202
215
{
203
216
switch (theAlgorithm)
@@ -236,6 +249,9 @@ void QgsContrastEnhancement::setContrastEnhancementAlgorithm(CONTRAST_ENHANCEMEN
236
249
*/
237
250
void QgsContrastEnhancement::setContrastEnhancementFunction (QgsContrastEnhancementFunction* theFunction)
238
251
{
252
+ #ifdef QGISDEBUG
253
+ QgsDebugMsg (" QgsContrastEnhancement::setContrastEnhancementFunction() called" );
254
+ #endif
239
255
if (0 != theFunction)
240
256
{
241
257
mContrastEnhancementFunction = theFunction;
@@ -252,6 +268,9 @@ void QgsContrastEnhancement::setContrastEnhancementFunction(QgsContrastEnhanceme
252
268
*/
253
269
void QgsContrastEnhancement::setMaximumValue (double theValue, bool generateTable)
254
270
{
271
+ #ifdef QGISDEBUG
272
+ QgsDebugMsg (" QgsContrastEnhancement::setMaximumValue() called value: " + QString::number (theValue) +" generate lookup table: " + QString::number ((int )generateTable));
273
+ #endif
255
274
if (theValue > getMaximumPossibleValue (mRasterDataType ))
256
275
{
257
276
mMaximumValue = getMaximumPossibleValue (mRasterDataType );
@@ -282,6 +301,9 @@ void QgsContrastEnhancement::setMaximumValue(double theValue, bool generateTable
282
301
*/
283
302
void QgsContrastEnhancement::setMinimumValue (double theValue, bool generateTable)
284
303
{
304
+ #ifdef QGISDEBUG
305
+ QgsDebugMsg (" QgsContrastEnhancement::setMinimumValue() called value: " + QString::number (theValue) +" generate lookup table: " + QString::number ((int )generateTable));
306
+ #endif
285
307
if (theValue < getMinimumPossibleValue (mRasterDataType ))
286
308
{
287
309
mMinimumValue = getMinimumPossibleValue (mRasterDataType );
@@ -318,7 +340,7 @@ int QgsContrastEnhancement::stretch(double theValue)
318
340
319
341
if (mLookupTable && NO_STRETCH != mContrastEnhancementAlgorithm )
320
342
{
321
- return mLookupTable [static_cast <int >(theValue)];
343
+ return mLookupTable [static_cast <int >(theValue + mLookupTableOffset )];
322
344
}
323
345
else
324
346
{
0 commit comments