mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-24 00:47:57 -05:00
87 lines
2.2 KiB
Plaintext
87 lines
2.2 KiB
Plaintext
|
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();
|
||
|
// 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)*/
|
||
|
// float* data();
|
||
|
/**Returns data and ownership. Sets data and nrows, ncols of this matrix to 0*/
|
||
|
// float* takeData();
|
||
|
|
||
|
void setData( int cols, int rows, float* 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();
|
||
|
};
|