QGIS API Documentation  2.4.0-Chugiak
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
QgsCubicRasterResampler Class Reference

Cubic Raster Resampler. More...

#include <qgscubicrasterresampler.h>

Inheritance diagram for QgsCubicRasterResampler:
Inheritance graph
[legend]
Collaboration diagram for QgsCubicRasterResampler:
Collaboration graph
[legend]

Public Member Functions

 QgsCubicRasterResampler ()
 
 ~QgsCubicRasterResampler ()
 
QgsRasterResamplerclone () const
 
void resample (const QImage &srcImage, QImage &dstImage)
 
QString type () const
 
- Public Member Functions inherited from QgsRasterResampler
virtual ~QgsRasterResampler ()
 

Private Member Functions

void calculateControlPoints (int nCols, int nRows, int currentRow, int currentCol, int *redMatrix, int *greenMatrix, int *blueMatrix, int *alphaMatrix, double *xDerivativeMatrixRed, double *xDerivativeMatrixGreen, double *xDerivativeMatrixBlue, double *xDerivativeMatrixAlpha, double *yDerivativeMatrixRed, double *yDerivativeMatrixGreen, double *yDerivativeMatrixBlue, double *yDerivativeMatrixAlpha)
 
QRgb curveInterpolation (QRgb pt1, QRgb pt2, double t, double d1red, double d1green, double d1blue, double d1alpha, double d2red, double d2green, double d2blue, double d2alpha)
 Use cubic curve interpoation at the borders of the raster. More...
 

Static Private Member Functions

static void xDerivativeMatrix (int nCols, int nRows, double *matrix, const int *colorMatrix)
 
static void yDerivativeMatrix (int nCols, int nRows, double *matrix, const int *colorMatrix)
 
static double calcBernsteinPoly (int n, int i, double t)
 
static int lower (int n, int i)
 
static double power (double a, int b)
 
static int faculty (int n)
 

Private Attributes

double cRed00
 
double cRed10
 
double cRed20
 
double cRed30
 
double cRed01
 
double cRed11
 
double cRed21
 
double cRed31
 
double cRed02
 
double cRed12
 
double cRed22
 
double cRed32
 
double cRed03
 
double cRed13
 
double cRed23
 
double cRed33
 
double cGreen00
 
double cGreen10
 
double cGreen20
 
double cGreen30
 
double cGreen01
 
double cGreen11
 
double cGreen21
 
double cGreen31
 
double cGreen02
 
double cGreen12
 
double cGreen22
 
double cGreen32
 
double cGreen03
 
double cGreen13
 
double cGreen23
 
double cGreen33
 
double cBlue00
 
double cBlue10
 
double cBlue20
 
double cBlue30
 
double cBlue01
 
double cBlue11
 
double cBlue21
 
double cBlue31
 
double cBlue02
 
double cBlue12
 
double cBlue22
 
double cBlue32
 
double cBlue03
 
double cBlue13
 
double cBlue23
 
double cBlue33
 
double cAlpha00
 
double cAlpha10
 
double cAlpha20
 
double cAlpha30
 
double cAlpha01
 
double cAlpha11
 
double cAlpha21
 
double cAlpha31
 
double cAlpha02
 
double cAlpha12
 
double cAlpha22
 
double cAlpha32
 
double cAlpha03
 
double cAlpha13
 
double cAlpha23
 
double cAlpha33
 

Detailed Description

Cubic Raster Resampler.

Definition at line 27 of file qgscubicrasterresampler.h.

Constructor & Destructor Documentation

QgsCubicRasterResampler::QgsCubicRasterResampler ( )

Definition at line 22 of file qgscubicrasterresampler.cpp.

Referenced by clone().

QgsCubicRasterResampler::~QgsCubicRasterResampler ( )

Definition at line 26 of file qgscubicrasterresampler.cpp.

Member Function Documentation

double QgsCubicRasterResampler::calcBernsteinPoly ( int  n,
int  i,
double  t 
)
staticprivate

Definition at line 400 of file qgscubicrasterresampler.cpp.

References lower(), and power().

Referenced by curveInterpolation(), and resample().

void QgsCubicRasterResampler::calculateControlPoints ( int  nCols,
int  nRows,
int  currentRow,
int  currentCol,
int *  redMatrix,
int *  greenMatrix,
int *  blueMatrix,
int *  alphaMatrix,
double *  xDerivativeMatrixRed,
double *  xDerivativeMatrixGreen,
double *  xDerivativeMatrixBlue,
double *  xDerivativeMatrixAlpha,
double *  yDerivativeMatrixRed,
double *  yDerivativeMatrixGreen,
double *  yDerivativeMatrixBlue,
double *  yDerivativeMatrixAlpha 
)
private
QgsRasterResampler * QgsCubicRasterResampler::clone ( ) const
virtual

Implements QgsRasterResampler.

Definition at line 30 of file qgscubicrasterresampler.cpp.

References QgsCubicRasterResampler().

QRgb QgsCubicRasterResampler::curveInterpolation ( QRgb  pt1,
QRgb  pt2,
double  t,
double  d1red,
double  d1green,
double  d1blue,
double  d1alpha,
double  d2red,
double  d2green,
double  d2blue,
double  d2alpha 
)
private

Use cubic curve interpoation at the borders of the raster.

Definition at line 377 of file qgscubicrasterresampler.cpp.

References calcBernsteinPoly().

Referenced by resample().

int QgsCubicRasterResampler::faculty ( int  n)
staticprivate

Definition at line 444 of file qgscubicrasterresampler.cpp.

Referenced by lower().

int QgsCubicRasterResampler::lower ( int  n,
int  i 
)
staticprivate

Definition at line 410 of file qgscubicrasterresampler.cpp.

References faculty().

Referenced by calcBernsteinPoly().

double QgsCubicRasterResampler::power ( double  a,
int  b 
)
staticprivate

Definition at line 422 of file qgscubicrasterresampler.cpp.

Referenced by calcBernsteinPoly().

void QgsCubicRasterResampler::resample ( const QImage &  srcImage,
QImage &  dstImage 
)
virtual
QString QgsCubicRasterResampler::type ( ) const
inlinevirtual

Implements QgsRasterResampler.

Definition at line 34 of file qgscubicrasterresampler.h.

void QgsCubicRasterResampler::xDerivativeMatrix ( int  nCols,
int  nRows,
double *  matrix,
const int *  colorMatrix 
)
staticprivate

Definition at line 274 of file qgscubicrasterresampler.cpp.

References index.

Referenced by resample().

void QgsCubicRasterResampler::yDerivativeMatrix ( int  nCols,
int  nRows,
double *  matrix,
const int *  colorMatrix 
)
staticprivate

Definition at line 301 of file qgscubicrasterresampler.cpp.

References index.

Referenced by resample().

Member Data Documentation

double QgsCubicRasterResampler::cAlpha00
private

Definition at line 66 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha01
private

Definition at line 66 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha02
private

Definition at line 67 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha03
private

Definition at line 67 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha10
private

Definition at line 66 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha11
private

Definition at line 66 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha12
private

Definition at line 67 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha13
private

Definition at line 67 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha20
private

Definition at line 66 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha21
private

Definition at line 66 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha22
private

Definition at line 67 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha23
private

Definition at line 67 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha30
private

Definition at line 66 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha31
private

Definition at line 66 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha32
private

Definition at line 67 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cAlpha33
private

Definition at line 67 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue00
private

Definition at line 63 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue01
private

Definition at line 63 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue02
private

Definition at line 64 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue03
private

Definition at line 64 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue10
private

Definition at line 63 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue11
private

Definition at line 63 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue12
private

Definition at line 64 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue13
private

Definition at line 64 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue20
private

Definition at line 63 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue21
private

Definition at line 63 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue22
private

Definition at line 64 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue23
private

Definition at line 64 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue30
private

Definition at line 63 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue31
private

Definition at line 63 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue32
private

Definition at line 64 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cBlue33
private

Definition at line 64 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen00
private

Definition at line 60 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen01
private

Definition at line 60 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen02
private

Definition at line 61 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen03
private

Definition at line 61 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen10
private

Definition at line 60 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen11
private

Definition at line 60 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen12
private

Definition at line 61 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen13
private

Definition at line 61 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen20
private

Definition at line 60 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen21
private

Definition at line 60 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen22
private

Definition at line 61 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen23
private

Definition at line 61 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen30
private

Definition at line 60 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen31
private

Definition at line 60 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen32
private

Definition at line 61 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cGreen33
private

Definition at line 61 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed00
private

Definition at line 57 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed01
private

Definition at line 57 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed02
private

Definition at line 58 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed03
private

Definition at line 58 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed10
private

Definition at line 57 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed11
private

Definition at line 57 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed12
private

Definition at line 58 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed13
private

Definition at line 58 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed20
private

Definition at line 57 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed21
private

Definition at line 57 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed22
private

Definition at line 58 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed23
private

Definition at line 58 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed30
private

Definition at line 57 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed31
private

Definition at line 57 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed32
private

Definition at line 58 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().

double QgsCubicRasterResampler::cRed33
private

Definition at line 58 of file qgscubicrasterresampler.h.

Referenced by calculateControlPoints(), and resample().


The documentation for this class was generated from the following files: