QGIS API Documentation  3.20.0-Odense (decaadbb31)
qgscliptominmaxenhancement.cpp
Go to the documentation of this file.
1 /* **************************************************************************
2  qgscliptominmaxenhancement.cpp - description
3  -------------------
4 begin : Fri Nov 16 2007
5 copyright : (C) 2007 by Peter J. Ersts
6 email : [email protected]
7 
8 ****************************************************************************/
9 
10 /* **************************************************************************
11  * *
12  * This program is free software; you can redistribute it and/or modify *
13  * it under the terms of the GNU General Public License as published by *
14  * the Free Software Foundation; either version 2 of the License, or *
15  * (at your option) any later version. *
16  * *
17  ***************************************************************************/
18 
20 #include "qgscontrastenhancement.h"
21 
22 QgsClipToMinMaxEnhancement::QgsClipToMinMaxEnhancement( Qgis::DataType qgsRasterDataType, double minimumValue, double maximumValue ) : QgsContrastEnhancementFunction( qgsRasterDataType, minimumValue, maximumValue )
23 {
24 }
25 
27 {
28  if ( value < mMinimumValue || value > mMaximumValue )
29  {
30  return -1;
31  }
32 
34  {
35  return static_cast<int>( value );
36  }
37  else
38  {
39  return static_cast<int>( ( ( ( value - mMinimumValuePossible ) / ( mMaximumValuePossible - mMinimumValuePossible ) ) * 255.0 ) );
40  }
41 }
42 
44 {
45  return !( value < mMinimumValue || value > mMaximumValue );
46 }
DataType
Raster data types.
Definition: qgis.h:119
@ Byte
Eight bit unsigned integer (quint8)
bool isValueInDisplayableRange(double) override
A customizable method to indicate if a pixel's value is within the displayable range.
int enhance(double) override
A customizable method that takes in a double value and returns a int between 0 and 255.
QgsClipToMinMaxEnhancement(Qgis::DataType, double, double)
A contrast enhancement function is the base class for all raster contrast enhancements.
double mMaximumValue
User defineable maximum value for the band, used for enhanceContrasting.
Qgis::DataType mQgsRasterDataType
Data type of the band.