1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91
|
class QgsRasterMatrix
{
%TypeHeaderCode
#include <qgsrastermatrix.h>
%End
public:
enum TwoArgOperator
{
opPLUS,
opMINUS,
opMUL,
opDIV,
opPOW,
opEQ, // =
opNE, // != resp. <>
opGT, // >
opLT, // <
opGE, // >=
opLE, // <=
opAND,
opOR
};
enum OneArgOperator
{
opSQRT,
opSIN,
opCOS,
opTAN,
opASIN,
opACOS,
opATAN,
opSIGN
};
/** Takes ownership of data array*/
QgsRasterMatrix();
//! @note note available in python bindings
// QgsRasterMatrix( int nCols, int nRows, float* data, double nodataValue );
QgsRasterMatrix( const QgsRasterMatrix& m );
~QgsRasterMatrix();
/** Returns true if matrix is 1x1 (=scalar number)*/
bool isNumber() const;
double number() const;
/** Returns data array (but not ownership)*/
//! @note not available in python bindings
// double* data();
/** Returns data and ownership. Sets data and nrows, ncols of this matrix to 0*/
//! @note not available in python bindings
// double* takeData();
void setData( int cols, int rows, double* data, double nodataValue );
int nColumns() const;
int nRows() const;
double nodataValue() const;
void setNodataValue( double d );
// QgsRasterMatrix& operator=( const QgsRasterMatrix& m );
/** Adds another matrix to this one*/
bool add( const QgsRasterMatrix& other );
/** Subtracts another matrix from this one*/
bool subtract( const QgsRasterMatrix& other );
bool multiply( const QgsRasterMatrix& other );
bool divide( const QgsRasterMatrix& other );
bool power( const QgsRasterMatrix& other );
bool equal( const QgsRasterMatrix& other );
bool notEqual( const QgsRasterMatrix& other );
bool greaterThan( const QgsRasterMatrix& other );
bool lesserThan( const QgsRasterMatrix& other );
bool greaterEqual( const QgsRasterMatrix& other );
bool lesserEqual( const QgsRasterMatrix& other );
bool logicalAnd( const QgsRasterMatrix& other );
bool logicalOr( const QgsRasterMatrix& other );
bool squareRoot();
bool sinus();
bool asinus();
bool cosinus();
bool acosinus();
bool tangens();
bool atangens();
bool changeSign();
bool log();
bool log10();
};
|