2018-04-17 21:08:42 +02:00
|
|
|
/************************************************************************
|
|
|
|
* This file has been generated automatically from *
|
|
|
|
* *
|
|
|
|
* src/core/qgsvector3d.h *
|
|
|
|
* *
|
|
|
|
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
|
|
|
|
************************************************************************/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class QgsVector3D
|
|
|
|
{
|
|
|
|
%Docstring
|
|
|
|
Class for storage of 3D vectors similar to QgsVector3D, with the difference that it uses double precision
|
|
|
|
instead of single precision floating point numbers.
|
|
|
|
|
|
|
|
.. versionadded:: 3.0
|
|
|
|
%End
|
|
|
|
|
|
|
|
%TypeHeaderCode
|
|
|
|
#include "qgsvector3d.h"
|
|
|
|
%End
|
|
|
|
public:
|
|
|
|
QgsVector3D();
|
|
|
|
%Docstring
|
|
|
|
Constructs a null vector
|
|
|
|
%End
|
|
|
|
|
|
|
|
QgsVector3D( double x, double y, double z );
|
|
|
|
%Docstring
|
|
|
|
Constructs a vector from given coordinates
|
|
|
|
%End
|
|
|
|
bool isNull() const;
|
|
|
|
%Docstring
|
|
|
|
Returns true if all three coordinates are zero
|
|
|
|
%End
|
|
|
|
|
|
|
|
double x() const;
|
|
|
|
%Docstring
|
|
|
|
Returns X coordinate
|
|
|
|
%End
|
|
|
|
double y() const;
|
|
|
|
%Docstring
|
|
|
|
Returns Y coordinate
|
|
|
|
%End
|
|
|
|
double z() const;
|
|
|
|
%Docstring
|
|
|
|
Returns Z coordinate
|
|
|
|
%End
|
|
|
|
|
|
|
|
void set( double x, double y, double z );
|
|
|
|
%Docstring
|
|
|
|
Sets vector coordinates
|
|
|
|
%End
|
|
|
|
|
|
|
|
bool operator==( const QgsVector3D &other ) const;
|
|
|
|
bool operator!=( const QgsVector3D &other ) const;
|
|
|
|
|
|
|
|
QgsVector3D operator+( const QgsVector3D &other ) const;
|
|
|
|
|
|
|
|
QgsVector3D operator-( const QgsVector3D &other ) const;
|
|
|
|
|
2018-04-18 10:47:41 +02:00
|
|
|
QgsVector3D operator *(const double factor) const;
|
2018-04-17 21:08:42 +02:00
|
|
|
|
|
|
|
QgsVector3D operator /( const double factor) const;
|
|
|
|
|
|
|
|
static double dotProduct( const QgsVector3D &v1, const QgsVector3D &v2);
|
|
|
|
%Docstring
|
|
|
|
Returns the dot product of two vectors
|
|
|
|
%End
|
|
|
|
|
|
|
|
static QgsVector3D crossProduct(const QgsVector3D& v1, const QgsVector3D& v2);
|
|
|
|
%Docstring
|
|
|
|
Returns the cross product of two vectors
|
|
|
|
%End
|
|
|
|
|
|
|
|
double length() const;
|
|
|
|
%Docstring
|
|
|
|
Returns the length of the vector
|
|
|
|
%End
|
|
|
|
|
|
|
|
void normalize();
|
|
|
|
%Docstring
|
|
|
|
Normalizes the currect vector in place.
|
|
|
|
%End
|
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
/************************************************************************
|
|
|
|
* This file has been generated automatically from *
|
|
|
|
* *
|
|
|
|
* src/core/qgsvector3d.h *
|
|
|
|
* *
|
|
|
|
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
|
|
|
|
************************************************************************/
|