26 #ifndef __TERRALIB_MAPTOOLS_INTERNAL_RASTERTRANSFORM_H
27 #define __TERRALIB_MAPTOOLS_INTERNAL_RASTERTRANSFORM_H
31 #include "../color/RGBAColor.h"
32 #include "../color/ColorBar.h"
42 class RasterSymbolizer;
66 typedef void (
RasterTransform::*TransformFunction)(double, double, double, double);
124 void setGain(
double value) { m_gain = value; }
160 void setRGBMap(std::map<RGBChannels, short>& rgbMap);
169 std::map<RGBChannels, short>&
getRGBMap() {
return m_rgbMap; }
204 void setLinearTransfParameters(
double vmin,
double vmax,
double rmin,
double rmax);
207 RasterTransfFunctions getTransfFunction();
210 void setTransfFunction(RasterTransfFunctions func);
219 void apply(
double icol,
double ilin,
double ocol,
double olin) {(this->*m_transfFuncPtr)(icol,ilin,ocol,olin); }
226 void setMono2ThreeBand(
double icol,
double ilin,
double ocol,
double olin);
232 void setExtractRGB(
double icol,
double ilin,
double ocol,
double olin);
238 void setRed2ThreeBand(
double icol,
double ilin,
double ocol,
double olin);
244 void setGreen2ThreeBand(
double icol,
double ilin,
double ocol,
double olin);
250 void setBlue2ThreeBand(
double icol,
double ilin,
double ocol,
double olin);
256 void setCategorize(
double icol,
double ilin,
double ocol,
double olin);
262 void setInterpolate(
double icol,
double ilin,
double ocol,
double olin);
268 void setBand2Band(
double icol,
double ilin,
double ocol,
double olin);
272 void fixValue(
double& value);
279 bool checkNoValue(
double& value,
int band);
316 #endif // __TERRALIB_MAPTOOLS_INTERNAL_RASTERTRANSFORM_H
CategorizedMap m_categorizeMap
Attribute to define the categorized transformation.
void setContrastM(double value)
Sets the constrast value for gray band.
void setCategorizedMap(CategorizedMap map)
void setTransparency(double value)
Sets the transparency.
double m_offset
Offset factor.
double getContrastM()
Gets the constrast value for gray band.
double m_rstMinValue
Min value from input raster.
void setRGBAFunction(RasterTransform::RGBAFunction transfFuncPtr)
void(RasterTransform::* TransformFunction)(double, double, double, double)
double m_gContrast
Contrast value used in green band.
double getContrastB()
Gets the constrast value for blue band.
te::rst::Raster * m_rasterIn
Pointer to a input raster.
double m_rstMaxValue
Max value from input raster.
short m_monoBand
Value for the gray band.
void setGain(double value)
Sets the gain.
te::rst::Raster * getInputRaster()
Gets the input raster.
#define TEMAPEXPORT
You can use this macro in order to export/import classes and functions from this module.
double m_mContrast
Contrast value used in gray band.
double m_transp
Transparency factor.
short m_monoBandOut
Value for output gray band channel.
void setOffset(double value)
Sets the offset.
double m_bContrast
Contrast value used in blue band.
te::color::RGBAColor(RasterTransform::* RGBAFunction)(double, double)
void setTransfFunction(RasterTransform::TransformFunction transfFuncPtr)
TransformFunction m_transfFuncPtr
Function used in transformation operation.
void setInterpolatedMap(InterpolatedMap map)
RGBChannels
The three channels of a display.
void setDestBand(short n)
InterpolatedMap m_interpolateMap
Attribute to define the interpolated transformation.
std::pair< double, double > RasterThreshold
std::map< RasterThreshold, te::color::ColorBar > InterpolatedMap
A helper class for 32-bit RGBA (Red-Green-Blue-Alpha channel) color.
double m_rContrast
Contrast value used in red band.
double getGain()
Gets the gain.
double getContrastR()
Gets the constrast value for red band.
te::rst::Raster * getOutputRaster()
Gets the output raster.
InterpolatedMap & getInterpolatedMap()
RGBAFunction m_RGBAFuncPtr
Function used in transformation operation.
std::map< RGBChannels, short > m_rgbMap
Map used to set the band order.
std::map< RasterThreshold, te::color::RGBAColor > CategorizedMap
std::map< RGBChannels, short > & getRGBMap()
te::rst::Raster * m_rasterOut
Pointer to a output raster.
void setContrastB(double value)
Sets the constrast value for blue band.
void setContrastR(double value)
Sets the constrast value for red band.
double getOffset()
Gets the offset.
void setContrastG(double value)
Sets the constrast value for green band.
A Raster Transform is a class that defines functions to transform a styled raster.
An abstract class for raster data strucutures.
void setBChannelMapping(short bIn, RGBChannels bOut)
te::color::RGBAColor apply(double icol, double ilin)
double getTransparency()
Gets the transparency.
void apply(double icol, double ilin, double ocol, double olin)
double m_gain
Gain factor.
double getContrastG()
Gets the constrast value for green band.
CategorizedMap & getCategorizedMap()