20 #ifndef __TERRALIB_RP_INTERNAL_COMPOSER_RULE_H 
   21 #define __TERRALIB_RP_INTERNAL_COMPOSER_RULE_H 
   24 #include "../raster/Raster.h" 
   25 #include "../raster/Interpolator.h" 
   26 #include "../geometry/MultiPolygon.h" 
   27 #include "../geometry/GeometricTransformation.h" 
  105         const std::vector< unsigned int >& raster1Bands, 
 
  107         const std::vector< unsigned int >& raster2Bands,
 
  109         const std::vector< unsigned int >& raster3Bands,
 
  112         const double& noDataValue,
 
  113         const bool forceRaster1NoDataValue,
 
  114         const bool forceRaster2NoDataValue,
 
  115         const std::vector< double >& pixelOffsets1,
 
  116         const std::vector< double >& pixelScales1,
 
  117         const std::vector< double >& pixelOffsets2,
 
  118         const std::vector< double >& pixelScales2 );
 
  129           double* 
const composedValuesPtr ) 
const = 0;      
 
bool m_forceRaster2NoDataValue
Use noDataValue as the input raster 2 no-data value (The original rasters no-data values will be igno...
 
std::string m_errorMessage
Current error message.
 
virtual bool initialize(const te::rst::Raster &raster1, const std::vector< unsigned int > &raster1Bands, const te::rst::Raster &raster2, const std::vector< unsigned int > &raster2Bands, te::rst::Raster &raster3, const std::vector< unsigned int > &raster3Bands, const te::rst::Interpolator::Method &interpMethod1, const te::rst::Interpolator::Method &interpMethod2, const double &noDataValue, const bool forceRaster1NoDataValue, const bool forceRaster2NoDataValue, const std::vector< double > &pixelOffsets1, const std::vector< double > &pixelScales1, const std::vector< double > &pixelOffsets2, const std::vector< double > &pixelScales2)
Inititate the instance.
 
std::vector< double > m_pixelScales1
The values scale to be applied to raster 1 pixel values before the composed value calcule (one elemen...
 
std::vector< double > m_pixelOffsets1
The values offset to be applied to raster 1 pixel values before the composed value calcule (one eleme...
 
te::rst::Interpolator::Method m_interpMethod1
The interpolation method to use when reading raster 1 data.
 
te::rst::Raster const  * m_raster1Ptr
Input raster 1.
 
ComposerRule(const ComposerRule &other)
 
bool m_forceRaster1NoDataValue
Use noDataValue as the input raster 1 no-data value (The original rasters no-data values will be igno...
 
te::rst::Raster const  * m_raster2Ptr
Input raster 2.
 
const ComposerRule & operator=(const ComposerRule &other)
 
te::rst::Raster * m_raster3Ptr
Input raster 3.
 
const std::string & getErrorMessage() const
Return the current error message if there is any.
 
std::vector< unsigned int > m_raster1Bands
Input raster 1 band indexes to use.
 
std::vector< double > m_pixelScales2
The values scale to be applied to raster 2 pixel values before the composed value calcule (one elemen...
 
std::vector< unsigned int > m_raster2Bands
Input raster 2 band indexes to use.
 
te::rst::Interpolator::Method m_interpMethod2
The interpolation method to use when reading raster 2 data.
 
std::vector< double > m_pixelOffsets2
The values offset to be applied to raster 2 pixel values before the composed value calcule (one eleme...
 
std::vector< unsigned int > m_raster3Bands
Input raster 3 band indexes to use.
 
virtual void getComposedValues(const double &line, const double &col, double *const composedValuesPtr) const =0
Compose a pixel value using the current parameters.
 
virtual ComposerRule * clone() const =0
Create a clone of this instance.
 
void setErrorMessage(const std::string &newErrorMessage)
Set the current error message.
 
double m_outputNoDataValue
The output raster no-data value.
 
Composed pixel value calculation for two overlaped rasters.
 
An abstract class for raster data strucutures.
 
InterpolationMethod
Allowed interpolation methods.
 
#define TERPEXPORT
You can use this macro in order to export/import classes and functions from this module.
 
Proxy configuration file for TerraView (see terraview_config.h).