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);
126 void setGain(
double value) { m_gain = value; }
162 void setRGBMap(std::map<RGBChannels, short>& rgbMap);
171 std::map<RGBChannels, short>&
getRGBMap() {
return m_rgbMap; }
206 void setLinearTransfParameters(
double vmin,
double vmax,
double rmin,
double rmax);
209 RasterTransfFunctions getTransfFunction();
212 void setTransfFunction(RasterTransfFunctions func);
221 void apply(
double icol,
double ilin,
double ocol,
double olin) {(this->*m_transfFuncPtr)(icol,ilin,ocol,olin); }
228 void setMono2ThreeBand(
double icol,
double ilin,
double ocol,
double olin);
234 void setExtractRGB(
double icol,
double ilin,
double ocol,
double olin);
240 void setExtractRGBA(
double icol,
double ilin,
double ocol,
double olin);
246 void setRed2ThreeBand(
double icol,
double ilin,
double ocol,
double olin);
252 void setGreen2ThreeBand(
double icol,
double ilin,
double ocol,
double olin);
258 void setBlue2ThreeBand(
double icol,
double ilin,
double ocol,
double olin);
264 void setCategorize(
double icol,
double ilin,
double ocol,
double olin);
270 void setInterpolate(
double icol,
double ilin,
double ocol,
double olin);
276 void setBand2Band(
double icol,
double ilin,
double ocol,
double olin);
280 void fixValue(
double& value);
287 bool checkNoValue(
double& value,
int band);
324 #endif // __TERRALIB_MAPTOOLS_INTERNAL_RASTERTRANSFORM_H
An abstract class for raster data strucutures.
A helper class for 32-bit RGBA (Red-Green-Blue-Alpha channel) color.