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);
128 void setGain(
double value) { m_gain = value; }
164 void setRGBMap(std::map<RGBChannels, short>& rgbMap);
173 std::map<RGBChannels, short>&
getRGBMap() {
return m_rgbMap; }
214 void setLinearTransfParameters(
double vmin,
double vmax,
double rmin,
double rmax);
217 RasterTransfFunctions getTransfFunction();
220 void setTransfFunction(RasterTransfFunctions func);
229 void apply(
double icol,
double ilin,
double ocol,
double olin) {(this->*m_transfFuncPtr)(icol,ilin,ocol,olin); }
236 void setMono2ThreeBand(
double icol,
double ilin,
double ocol,
double olin);
242 void setExtractRGB(
double icol,
double ilin,
double ocol,
double olin);
248 void setExtractRGBA(
double icol,
double ilin,
double ocol,
double olin);
254 void setRed2ThreeBand(
double icol,
double ilin,
double ocol,
double olin);
260 void setGreen2ThreeBand(
double icol,
double ilin,
double ocol,
double olin);
266 void setBlue2ThreeBand(
double icol,
double ilin,
double ocol,
double olin);
272 void setCategorize(
double icol,
double ilin,
double ocol,
double olin);
278 void setInterpolate(
double icol,
double ilin,
double ocol,
double olin);
284 void setRecode(
double icol,
double ilin,
double ocol,
double olin);
290 void setBand2Band(
double icol,
double ilin,
double ocol,
double olin);
294 void fixValue(
double& value);
301 bool checkNoValue(
double& value,
int band);
342 #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.