A Raster Transform is a class that defines functions to transform a styled raster. More...
#include <RasterTransform.h>
Public Types | |
typedef std::map< RasterThreshold, te::color::RGBAColor > | CategorizedMap |
enum | ContrastType { LINEAR_CONTRAST, SQUARE_CONTRAST, SQUARE_ROOT_CONTRAST, LOG_CONTRAST } |
typedef std::map< RasterThreshold, te::color::ColorBar > | InterpolatedMap |
typedef std::pair< double, double > | RasterThreshold |
enum | RasterTransfFunctions { NO_TRANSF =0, MONO2THREE_TRANSF =1, EXTRACT2RGB_TRANSF =2, RED2THREE_TRANSF =3, GREEN2THREE_TRANSF =4, BLUE2THREE_TRANSF =5, CATEGORIZE_TRANSF =6, INTERPOLATE_TRANSF =7, RECODE_TRANSF = 8, BAND2BAND_TRANSF =9, EXTRACT2RGBA_TRANSF, CONTRAST_TRANSF } |
typedef std::map< int, te::color::RGBAColor > | RecodedMap |
typedef te::color::RGBAColor(RasterTransform::* | RGBAFunction) (double, double) |
enum | RGBChannels { RED_CHANNEL =0, GREEN_CHANNEL =1, BLUE_CHANNEL =2, ALPHA_CHANNEL =3 } |
The three channels of a display. More... | |
typedef void(RasterTransform::* | TransformFunction) (double, double, double, double) |
Public Member Functions | |
void | apply (double icol, double ilin, double ocol, double olin) |
te::color::RGBAColor | apply (double icol, double ilin) |
void | clearRGBMap () |
CategorizedMap & | getCategorizedMap () |
double | getContrastB () |
Gets the constrast value for blue band. More... | |
double | getContrastG () |
Gets the constrast value for green band. More... | |
double | getContrastM () |
Gets the constrast value for gray band. More... | |
double | getContrastR () |
Gets the constrast value for red band. More... | |
short | getDestBand () |
double | getGain () |
Gets the gain. More... | |
te::rst::Raster * | getInputRaster () |
Gets the input raster. More... | |
InterpolatedMap & | getInterpolatedMap () |
double | getOffset () |
Gets the offset. More... | |
te::rst::Raster * | getOutputRaster () |
Gets the output raster. More... | |
RecodedMap & | getRecodedMap () |
std::map< RGBChannels, short > & | getRGBMap () |
short | getSrcBand () |
RasterTransfFunctions | getTransfFunction () |
double | getTransparency () |
Gets the transparency. More... | |
RasterTransform (te::rst::Raster *input, te::rst::Raster *output) | |
Constructor. More... | |
void | setBChannelMapping (short bIn, RGBChannels bOut) |
void | setCategorizedMap (CategorizedMap map) |
void | setContrastB (double value) |
Sets the constrast value for blue band. More... | |
void | setContrastG (double value) |
Sets the constrast value for green band. More... | |
void | setContrastGainsAndOffsets (const std::vector< double > &contrastGains, const std::vector< double > &contrastOffsets1, const std::vector< double > &contrastOffsets2) |
Set gain and offset parameters to be used by the CONTRAST_TRANSF method. More... | |
void | setContrastM (double value) |
Sets the constrast value for gray band. More... | |
void | setContrastR (double value) |
Sets the constrast value for red band. More... | |
void | setContrastType (const ContrastType &newType) |
Set the current contrast type. More... | |
void | setDestBand (short n) |
void | setGain (double value) |
Sets the gain. More... | |
void | setInterpolatedMap (InterpolatedMap map) |
void | setLinearTransfParameters (double vmin, double vmax, double rmin, double rmax) |
Set parameters of linear transformation. More... | |
void | setOffset (double value) |
Sets the offset 1. More... | |
void | setRecodedMap (RecodedMap map) |
void | setRGBAFunction (RasterTransform::RGBAFunction transfFuncPtr) |
void | setRGBMap (std::map< RGBChannels, short > &rgbMap) |
Sets the rgb map values. More... | |
void | setSrcBand (short n) |
void | setTransfFunction (RasterTransfFunctions func) |
void | setTransfFunction (RasterTransform::TransformFunction transfFuncPtr) |
void | setTransparency (double value) |
Sets the transparency. More... | |
~RasterTransform () | |
Destructor. More... | |
Protected Member Functions | |
bool | checkNoValue (double &value, int band) |
Function used to check if value is or not a valid value. More... | |
void | fixValue (double &value) |
te::color::RGBAColor | getBlue2ThreeBand (double icol, double ilin) |
te::color::RGBAColor | getCategorize (double icol, double ilin) |
te::color::RGBAColor | getCategorizedColor (double value) |
te::color::RGBAColor | getExtractRGB (double icol, double ilin) |
te::color::RGBAColor | getExtractRGBA (double icol, double ilin) |
te::color::RGBAColor | getGreen2ThreeBand (double icol, double ilin) |
te::color::RGBAColor | getInterpolate (double icol, double ilin) |
te::color::RGBAColor | getInterpolatedColor (double value) |
te::color::RGBAColor | getMono2ThreeBand (double icol, double ilin) |
te::color::RGBAColor | getRecode (double icol, double ilin) |
te::color::RGBAColor | getRecodedColor (double value) |
te::color::RGBAColor | getRed2ThreeBand (double icol, double ilin) |
void | setBand2Band (double icol, double ilin, double ocol, double olin) |
void | setBlue2ThreeBand (double icol, double ilin, double ocol, double olin) |
void | setCategorize (double icol, double ilin, double ocol, double olin) |
void | setContrastFuncPtr (const RasterTransform::ContrastType contrastType) |
Configures the contrast function pointer. More... | |
void | setContrastLinear (double icol, double ilin, double ocol, double olin) |
void | setContrastLog (double icol, double ilin, double ocol, double olin) |
void | setContrastSquare (double icol, double ilin, double ocol, double olin) |
void | setContrastSquareRoot (double icol, double ilin, double ocol, double olin) |
void | setExtractRGB (double icol, double ilin, double ocol, double olin) |
void | setExtractRGBA (double icol, double ilin, double ocol, double olin) |
void | setGreen2ThreeBand (double icol, double ilin, double ocol, double olin) |
void | setInterpolate (double icol, double ilin, double ocol, double olin) |
void | setMono2ThreeBand (double icol, double ilin, double ocol, double olin) |
void | setRecode (double icol, double ilin, double ocol, double olin) |
void | setRed2ThreeBand (double icol, double ilin, double ocol, double olin) |
Private Attributes | |
double | m_bContrast |
Contrast value used in blue band. More... | |
CategorizedMap | m_categorizeMap |
Attribute to define the categorized transformation. More... | |
std::vector< double > | m_contrastGains |
A vector of gains for each band used by the CONTRAST_TRANSF method. More... | |
std::vector< double > | m_contrastOffsets1 |
A vector of offsets1 for each band used by the CONTRAST_TRANSF method. More... | |
std::vector< double > | m_contrastOffsets2 |
A vector of offsets2 for each band used by the CONTRAST_TRANSF method. More... | |
ContrastType | m_currentContrastType |
Current contrast type. More... | |
double | m_gain |
Gain factor. More... | |
double | m_gContrast |
Contrast value used in green band. More... | |
InterpolatedMap | m_interpolateMap |
Attribute to define the interpolated transformation. More... | |
double | m_mContrast |
Contrast value used in gray band. More... | |
short | m_monoBand |
Value for the gray band. More... | |
short | m_monoBandOut |
Value for output gray band channel. More... | |
double | m_offset |
Offset factor. More... | |
te::rst::Raster * | m_rasterIn |
Pointer to a input raster. More... | |
te::rst::Raster * | m_rasterOut |
Pointer to a output raster. More... | |
double | m_rContrast |
Contrast value used in red band. More... | |
RecodedMap | m_recodeMap |
Attribute to define the recoded transformation. More... | |
RGBAFunction | m_RGBAFuncPtr |
Function used in transformation operation. More... | |
std::map< RGBChannels, short > | m_rgbMap |
Map used to set the band order. More... | |
double | m_rstMaxValue |
Max value from input raster. More... | |
double | m_rstMinValue |
Min value from input raster. More... | |
std::size_t | m_setContrast_bandIdx |
std::size_t | m_setContrast_bandsNumber |
double | m_setContrast_pixelValue |
TransformFunction | m_transfFuncPtr |
Function used in transformation operation. More... | |
double | m_transp |
Transparency factor. More... | |
A Raster Transform is a class that defines functions to transform a styled raster.
Definition at line 62 of file RasterTransform.h.
typedef std::map<RasterThreshold, te::color::RGBAColor> te::map::RasterTransform::CategorizedMap |
Definition at line 71 of file RasterTransform.h.
typedef std::map<RasterThreshold, te::color::ColorBar> te::map::RasterTransform::InterpolatedMap |
Definition at line 72 of file RasterTransform.h.
typedef std::pair<double, double> te::map::RasterTransform::RasterThreshold |
Definition at line 69 of file RasterTransform.h.
typedef std::map<int, te::color::RGBAColor> te::map::RasterTransform::RecodedMap |
Definition at line 73 of file RasterTransform.h.
typedef te::color::RGBAColor(RasterTransform::* te::map::RasterTransform::RGBAFunction) (double, double) |
Definition at line 67 of file RasterTransform.h.
typedef void(RasterTransform::* te::map::RasterTransform::TransformFunction) (double, double, double, double) |
Definition at line 66 of file RasterTransform.h.
Definition at line 102 of file RasterTransform.h.
Definition at line 85 of file RasterTransform.h.
The three channels of a display.
Enumerator | |
---|---|
RED_CHANNEL | |
GREEN_CHANNEL | |
BLUE_CHANNEL | |
ALPHA_CHANNEL |
Definition at line 76 of file RasterTransform.h.
te::map::RasterTransform::RasterTransform | ( | te::rst::Raster * | input, |
te::rst::Raster * | output | ||
) |
Constructor.
input | |
output |
te::map::RasterTransform::~RasterTransform | ( | ) |
Destructor.
|
inline |
Applies the selected transformation method
Definition at line 245 of file RasterTransform.h.
|
inline |
Definition at line 247 of file RasterTransform.h.
|
protected |
Function used to check if value is or not a valid value.
|
inline |
Clears current mapping from bands to channel
Definition at line 186 of file RasterTransform.h.
|
protected |
Function used to adjust the value in raster range
|
protected |
This transformation repeats the value of the first band in input three bands of the output
|
protected |
This transformation get the value of the selected band in input and get the categorized value
|
protected |
Function used to get the categorized color given a pixel value
|
inline |
Gets the categorize map information
Definition at line 207 of file RasterTransform.h.
|
inline |
Gets the constrast value for blue band.
Definition at line 171 of file RasterTransform.h.
|
inline |
Gets the constrast value for green band.
Definition at line 165 of file RasterTransform.h.
|
inline |
Gets the constrast value for gray band.
Definition at line 177 of file RasterTransform.h.
|
inline |
Gets the constrast value for red band.
Definition at line 159 of file RasterTransform.h.
|
inline |
Gets the destination of the mono band
Definition at line 201 of file RasterTransform.h.
|
protected |
This transformation is used to define a particular mapping from input bands to RGB channels
|
protected |
This transformation is used to define a particular mapping from input bands to RGBA channels
|
inline |
Gets the gain.
Definition at line 141 of file RasterTransform.h.
|
protected |
This transformation repeats the value of the first band in input three bands of the output
|
inline |
Gets the input raster.
Definition at line 126 of file RasterTransform.h.
|
protected |
This transformation get the value of the selected band in input and get the interpolated value
|
protected |
Function used to get the interpolated color given a pixel value
|
inline |
Gets the categorize map information
Definition at line 213 of file RasterTransform.h.
|
protected |
This transformation repeats the value of the first band in input three bands of the output
|
inline |
Gets the offset.
Definition at line 153 of file RasterTransform.h.
|
inline |
Gets the output raster.
Definition at line 129 of file RasterTransform.h.
|
protected |
This transformation get the value of the selected band in input and get the recoded value
|
protected |
Function used to get the recoded color given a pixel value
|
inline |
Gets the recode map information
Definition at line 219 of file RasterTransform.h.
|
protected |
This transformation repeats the value of the first band in input three bands of the output
|
inline |
Returns the mapping from a particular input band to a particular output channel
Definition at line 189 of file RasterTransform.h.
|
inline |
Gets the mono band to be transformed
Definition at line 195 of file RasterTransform.h.
RasterTransfFunctions te::map::RasterTransform::getTransfFunction | ( | ) |
Returns the identifier of the transformation function currently set
|
inline |
Gets the transparency.
Definition at line 135 of file RasterTransform.h.
|
protected |
This transformation repeats the value of the n band in input to b band in output
|
inline |
Sets the mapping from a particular input band to a particular output channel
Definition at line 183 of file RasterTransform.h.
|
protected |
This transformation repeats the value of the first band in input three bands of the output
|
protected |
This transformation get the value of the selected band in input and set the categorized value in output bands of the output
|
inline |
Sets the categorize map information
Definition at line 204 of file RasterTransform.h.
|
inline |
Sets the constrast value for blue band.
Definition at line 168 of file RasterTransform.h.
|
protected |
Configures the contrast function pointer.
contrastType | Contrast type.. |
|
inline |
Sets the constrast value for green band.
Definition at line 162 of file RasterTransform.h.
void te::map::RasterTransform::setContrastGainsAndOffsets | ( | const std::vector< double > & | contrastGains, |
const std::vector< double > & | contrastOffsets1, | ||
const std::vector< double > & | contrastOffsets2 | ||
) |
Set gain and offset parameters to be used by the CONTRAST_TRANSF method.
contrastGains | A vector of gains for each raster band. |
contrastOffsets1 | A vector of offsets1 for each raster band. |
contrastOffsets2 | A vector of offsets2 for each raster band. |
|
protected |
This transformation aplies a linear contrast
|
protected |
This transformation aplies a log contrast
|
inline |
Sets the constrast value for gray band.
Definition at line 174 of file RasterTransform.h.
|
inline |
Sets the constrast value for red band.
Definition at line 156 of file RasterTransform.h.
|
protected |
This transformation aplies a square contrast
|
protected |
This transformation aplies a square root contrast
void te::map::RasterTransform::setContrastType | ( | const ContrastType & | newType | ) |
Set the current contrast type.
newType | New contrast type. |
|
inline |
Sets the destination of the mono band
Definition at line 198 of file RasterTransform.h.
|
protected |
This transformation is used to define a particular mapping from input bands to RGB channels
|
protected |
This transformation is used to define a particular mapping from input bands to RGBA channels
|
inline |
Sets the gain.
Definition at line 138 of file RasterTransform.h.
|
protected |
This transformation repeats the value of the first band in input three bands of the output
|
protected |
This transformation get the value of the selected band in input and set the interpolated value in output bands of the output
|
inline |
Sets the interpolate map information
Definition at line 210 of file RasterTransform.h.
void te::map::RasterTransform::setLinearTransfParameters | ( | double | vmin, |
double | vmax, | ||
double | rmin, | ||
double | rmax | ||
) |
Set parameters of linear transformation.
vmin | smallest input value |
vmax | largest input value |
rmin | smallest value of the output range |
rmax | largest value of the output range |
|
protected |
This transformation repeats the value of the first band in input three bands of the output
|
inline |
Sets the offset 1.
Definition at line 144 of file RasterTransform.h.
|
protected |
This transformation get the value of the selected band in input and set the recoded value in output bands of the output
|
inline |
Sets the recode map information
Definition at line 216 of file RasterTransform.h.
|
protected |
This transformation repeats the value of the first band in input three bands of the output
|
inline |
Sets the transformation method to be used
Definition at line 242 of file RasterTransform.h.
void te::map::RasterTransform::setRGBMap | ( | std::map< RGBChannels, short > & | rgbMap | ) |
Sets the rgb map values.
|
inline |
Sets the mono band to be transformed
Definition at line 192 of file RasterTransform.h.
void te::map::RasterTransform::setTransfFunction | ( | RasterTransfFunctions | func | ) |
Sets the associated transformation function from an identifier
|
inline |
Sets the transformation method to be used
Definition at line 239 of file RasterTransform.h.
|
inline |
Sets the transparency.
Definition at line 132 of file RasterTransform.h.
|
private |
Contrast value used in blue band.
Definition at line 367 of file RasterTransform.h.
|
private |
Attribute to define the categorized transformation.
Definition at line 384 of file RasterTransform.h.
|
private |
A vector of gains for each band used by the CONTRAST_TRANSF method.
Definition at line 388 of file RasterTransform.h.
|
private |
A vector of offsets1 for each band used by the CONTRAST_TRANSF method.
Definition at line 389 of file RasterTransform.h.
|
private |
A vector of offsets2 for each band used by the CONTRAST_TRANSF method.
Definition at line 390 of file RasterTransform.h.
|
private |
Current contrast type.
Definition at line 369 of file RasterTransform.h.
|
private |
Gain factor.
Definition at line 361 of file RasterTransform.h.
|
private |
Contrast value used in green band.
Definition at line 366 of file RasterTransform.h.
|
private |
Attribute to define the interpolated transformation.
Definition at line 385 of file RasterTransform.h.
|
private |
Contrast value used in gray band.
Definition at line 368 of file RasterTransform.h.
|
private |
Value for the gray band.
Definition at line 378 of file RasterTransform.h.
|
private |
Value for output gray band channel.
Definition at line 379 of file RasterTransform.h.
|
private |
Offset factor.
Definition at line 362 of file RasterTransform.h.
|
private |
Pointer to a input raster.
Definition at line 357 of file RasterTransform.h.
|
private |
Pointer to a output raster.
Definition at line 358 of file RasterTransform.h.
|
private |
Contrast value used in red band.
Definition at line 365 of file RasterTransform.h.
|
private |
Attribute to define the recoded transformation.
Definition at line 386 of file RasterTransform.h.
|
private |
Function used in transformation operation.
Definition at line 382 of file RasterTransform.h.
|
private |
Map used to set the band order.
Definition at line 377 of file RasterTransform.h.
|
private |
Max value from input raster.
Definition at line 364 of file RasterTransform.h.
|
private |
Min value from input raster.
Definition at line 363 of file RasterTransform.h.
|
private |
Definition at line 374 of file RasterTransform.h.
|
private |
Definition at line 375 of file RasterTransform.h.
|
private |
Definition at line 373 of file RasterTransform.h.
|
private |
Function used in transformation operation.
Definition at line 381 of file RasterTransform.h.
|
private |
Transparency factor.
Definition at line 360 of file RasterTransform.h.