29 #include "../raster/Raster.h"
30 #include "../raster/RasterProperty.h"
31 #include "../se/RasterSymbolizer.h"
32 #include "../se/ChannelSelection.h"
33 #include "../se/ContrastEnhancement.h"
34 #include "../se/SelectedChannel.h"
52 assert(m_rstSymbolizer);
54 getGeneralProperties();
56 if(m_rstSymbolizer->getChannelSelection())
58 getChannelSelection();
61 if(m_rstSymbolizer->getColorMap())
63 getColorMapInformation();
70 if(m_rstSymbolizer->getOpacity())
74 m_rstTransform->setTransparency(transp);
78 if(m_rstSymbolizer->getGain())
82 double curGain = m_rstTransform->getGain();
86 m_rstTransform->setGain(curGain);
90 if(m_rstSymbolizer->getOffset())
94 double curOffset = m_rstTransform->getOffset();
98 m_rstTransform->setOffset(curOffset);
110 if((m_rstTransform->getInputRaster() && m_rstTransform->getOutputRaster()) &&
111 (m_rstTransform->getInputRaster()->getNumberOfBands() == m_rstTransform->getOutputRaster()->getNumberOfBands()))
122 m_rstTransform->clearRGBMap();
134 m_rstTransform->clearRGBMap();
142 m_rstTransform->clearRGBMap();
150 m_rstTransform->clearRGBMap();
166 m_rstTransform->setSrcBand(band);
170 m_rstTransform->setContrastM(gamma);
183 m_rstTransform->setContrastR(gamma);
196 m_rstTransform->setContrastG(gamma);
209 m_rstTransform->setContrastB(gamma);
237 if(m_rstSymbolizer->getColorMap()->getCategorize())
241 getCategorizedMap(m_rstSymbolizer->getColorMap()->getCategorize());
243 else if(m_rstSymbolizer->getColorMap()->getInterpolate())
247 getInterpolatedMap(m_rstSymbolizer->getColorMap()->getInterpolate());
261 for(
size_t i = 0; i < ip.size() - 1; ++i)
267 colorInit.setColor(colorInit.getRed(), colorInit.getGreen(), colorInit.getBlue());
268 double lowerLimit = ipItemInit->
getData();
274 colorEnd.setColor(colorEnd.getRed(), colorEnd.getGreen(), colorEnd.getBlue());
275 double upperLimit = ipItemEnd->
getData();
279 map.insert(te::map::RasterTransform::InterpolatedMap::value_type(std::pair<double, double>(lowerLimit, upperLimit), cb));
282 m_rstTransform->setInterpolatedMap(map);
289 std::vector<te::se::ParameterValue*> t = caterogize->
getThresholds();
292 for(
size_t i = 0; i < tV.size(); ++i)
294 double lowerLimit, upperLimit;
298 lowerLimit = std::numeric_limits<double>::min();
301 else if(i == tV.size() - 1)
304 upperLimit = std::numeric_limits<double>::max();
316 map.insert(te::map::RasterTransform::CategorizedMap::value_type(std::pair<double, double>(lowerLimit, upperLimit), color));
319 m_rstTransform->setCategorizedMap(map);
The RasterSymbolizer describes how to render raster/matrix-coverage data (e.g., satellite photos...
It models the concept of color bar.
RasterTransformConfigurer(te::se::RasterSymbolizer *rs, te::map::RasterTransform *rt)
Constructor.
ChannelSelection specifies the false-color channel selection for a multi-spectral raster source (such...
void getGrayChannelProperties(te::se::SelectedChannel *se)
ContrastEnhancement * getContrastEnhancement() const
They are used to define a graph of points.
SelectedChannel * getRedChannel() const
Utility functions for MapTools module.
const std::vector< ParameterValue * > & getThresholds() const
#define TE_SE_DEFAULT_GAMMA_VALUE
It specifies the default gamma value.
The transformation of continuous values to distinct values (Categorize function). ...
double getGammaProperty(te::se::ContrastEnhancement *ce)
TEMAPEXPORT double GetDouble(const te::se::ParameterValue *param)
Gets the parameter value as double.
A Raster Transform configurer generates a Raster Transform given a RasterSymbolzier.
int getGreen() const
It returns the green component color value (a value from 0 to 255).
The transformation of continuous values to a number of values (Interpolate function).
A selected channel to be display.
void getChannelSelection()
ColorCompositionType getColorCompositionType() const
void setColor(const std::string &hexColor)
It sets the color using a two hexadecimal RGB-encoded color.
void getCategorizedMap(te::se::Categorize *caterogize)
std::map< RasterThreshold, te::color::ColorBar > InterpolatedMap
A helper class for 32-bit RGBA (Red-Green-Blue-Alpha channel) color.
void configure()
Configure Transformation.
ColorCompositionType
Allowed color compositions type.
TEMAPEXPORT std::string GetString(const te::se::ParameterValue *param)
Gets the parameter value as string.
double getGammaValue() const
SelectedChannel * getBlueChannel() const
void getRedChannelProperties(te::se::SelectedChannel *se)
void getInterpolatedMap(te::se::Interpolate *interpolate)
SelectedChannel * getGreenChannel() const
ParameterValue * getValue() const
std::map< RasterThreshold, te::color::RGBAColor > CategorizedMap
#define TE_OPAQUE
For an RGBA color this is the value of the alpha-channel for totally opaque.
SelectedChannel * getGrayChannel() const
A Raster Transform is a class that defines functions to transform a styled raster.
const std::vector< ParameterValue * > & getThresholdValues() const
const std::vector< InterpolationPoint * > & getInterpolationPoints() const
std::string getSourceChannelName() const
ContrastEnhancement defines the 'stretching' of contrast for a channel of a false-color image or for ...
void getGeneralProperties()
void getBlueChannelProperties(te::se::SelectedChannel *se)
~RasterTransformConfigurer()
Destructor.
int getBlue() const
It returns the blue component color value (a value from 0 to 255).
void getColorMapInformation()
int getRed() const
It returns the red component color value (a value from 0 to 255).
void getGreenChannelProperties(te::se::SelectedChannel *se)