QVector2D 類

The QVector2D class represents a vector or vertex in 2D space. 更多...

頭: #include <QVector2D>
qmake: QT += gui
Since: Qt 4.6

公共函數

QVector2D ()
QVector2D (float xpos , float ypos )
QVector2D (const QPoint & point )
QVector2D (const QPointF & point )
QVector2D (const QVector3D & vector )
QVector2D (const QVector4D & vector )
float distanceToLine (const QVector2D & point , const QVector2D & direction ) const
float distanceToPoint (const QVector2D & point ) const
bool isNull () const
float length () const
float lengthSquared () const
void normalize ()
QVector2D normalized () const
void setX (float x )
void setY (float y )
QPoint toPoint () const
QPointF toPointF () const
QVector3D toVector3D () const
QVector4D toVector4D () const
float x () const
float y () const
QVariant operator QVariant () const
QVector2D & operator*= (float factor )
QVector2D & operator*= (const QVector2D & vector )
QVector2D & operator+= (const QVector2D & vector )
QVector2D & operator-= (const QVector2D & vector )
QVector2D & operator/= (float divisor )
QVector2D & operator/= (const QVector2D & vector )
float & operator[] (int i )
float operator[] (int i ) const

靜態公共成員

float dotProduct (const QVector2D & v1 , const QVector2D & v2 )
bool qFuzzyCompare (const QVector2D & v1 , const QVector2D & v2 )
bool operator!= (const QVector2D & v1 , const QVector2D & v2 )
const QVector2D operator* (float factor , const QVector2D & vector )
const QVector2D operator* (const QVector2D & vector , float factor )
const QVector2D operator* (const QVector2D & v1 , const QVector2D & v2 )
const QVector2D operator+ (const QVector2D & v1 , const QVector2D & v2 )
const QVector2D operator- (const QVector2D & v1 , const QVector2D & v2 )
const QVector2D operator- (const QVector2D & vector )
const QVector2D operator/ (const QVector2D & vector , float divisor )
const QVector2D operator/ (const QVector2D & vector , const QVector2D & divisor )
QDataStream & operator<< (QDataStream & stream , const QVector2D & vector )
bool operator== (const QVector2D & v1 , const QVector2D & v2 )
QDataStream & operator>> (QDataStream & stream , QVector2D & vector )

詳細描述

The QVector2D class represents a vector or vertex in 2D space.

The QVector2D class can also be used to represent vertices in 2D space. We therefore do not need to provide a separate vertex class.

另請參閱 QVector3D , QVector4D ,和 QQuaternion .

成員函數文檔編製

QVector2D:: QVector2D ()

Constructs a null vector, i.e. with coordinates (0, 0).

QVector2D:: QVector2D ( float xpos , float ypos )

構造嚮量采用坐標 ( xpos , ypos ).

QVector2D:: QVector2D (const QPoint & point )

Constructs a vector with x and y coordinates from a 2D point .

QVector2D:: QVector2D (const QPointF & point )

Constructs a vector with x and y coordinates from a 2D point .

QVector2D:: QVector2D (const QVector3D & vector )

Constructs a vector with x and y coordinates from a 3D vector . The z coordinate of vector is dropped.

另請參閱 toVector3D ().

QVector2D:: QVector2D (const QVector4D & vector )

Constructs a vector with x and y coordinates from a 3D vector . The z and w coordinates of vector are dropped.

另請參閱 toVector4D ().

float QVector2D:: distanceToLine (const QVector2D & point , const QVector2D & direction ) const

Returns the distance that this vertex is from a line defined by point and the unit vector direction .

direction is a null vector, then it does not define a line. In that case, the distance from point to this vertex is returned.

該函數在 Qt 5.1 引入。

另請參閱 distanceToPoint ().

float QVector2D:: distanceToPoint (const QVector2D & point ) const

Returns the distance from this vertex to a point defined by the vertex point .

該函數在 Qt 5.1 引入。

另請參閱 distanceToLine ().

[static] float QVector2D:: dotProduct (const QVector2D & v1 , const QVector2D & v2 )

返迴點積為 v1 and v2 .

bool QVector2D:: isNull () const

返迴 true if the x and y coordinates are set to 0.0, otherwise returns false .

float QVector2D:: length () const

從原點返迴嚮量長度。

另請參閱 lengthSquared () 和 normalized ().

float QVector2D:: lengthSquared () const

Returns the squared length of the vector from the origin. This is equivalent to the dot product of the vector with itself.

另請參閱 length () 和 dotProduct ().

void QVector2D:: normalize ()

Normalizes the currect vector in place. Nothing happens if this vector is a null vector or the length of the vector is very close to 1.

另請參閱 length () 和 normalized ().

QVector2D QVector2D:: normalized () const

Returns the normalized unit vector form of this vector.

If this vector is null, then a null vector is returned. If the length of the vector is very close to 1, then the vector will be returned as-is. Otherwise the normalized form of the vector of length 1 will be returned.

另請參閱 length () 和 normalize ().

void QVector2D:: setX ( float x )

將此點的 X 坐標設為給定 x 坐標。

另請參閱 x () 和 setY ().

void QVector2D:: setY ( float y )

將此點的 Y 坐標設為給定 y 坐標。

另請參閱 y () 和 setX ().

QPoint QVector2D:: toPoint () const

返迴 QPoint form of this 2D vector.

另請參閱 toPointF () 和 toVector3D ().

QPointF QVector2D:: toPointF () const

返迴 QPointF form of this 2D vector.

另請參閱 toPoint () 和 toVector3D ().

QVector3D QVector2D:: toVector3D () const

Returns the 3D form of this 2D vector, with the z coordinate set to zero.

另請參閱 toVector4D () 和 toPoint ().

QVector4D QVector2D:: toVector4D () const

Returns the 4D form of this 2D vector, with the z and w coordinates set to zero.

另請參閱 toVector3D () 和 toPoint ().

float QVector2D:: x () const

返迴此點的 X 坐標。

另請參閱 setX () 和 y ().

float QVector2D:: y () const

返迴此點的 Y 坐標。

另請參閱 setY () 和 x ().

QVariant QVector2D:: operator QVariant () const

Returns the 2D vector as a QVariant .

QVector2D &QVector2D:: operator*= ( float factor )

Multiplies this vector's coordinates by the given factor , and returns a reference to this vector.

另請參閱 operator/= ().

QVector2D &QVector2D:: operator*= (const QVector2D & vector )

Multiplies the components of this vector by the corresponding components in vector .

QVector2D &QVector2D:: operator+= (const QVector2D & vector )

添加給定 vector to this vector and returns a reference to this vector.

另請參閱 operator-= ().

QVector2D &QVector2D:: operator-= (const QVector2D & vector )

減去給定 vector from this vector and returns a reference to this vector.

另請參閱 operator+= ().

QVector2D &QVector2D:: operator/= ( float divisor )

Divides this vector's coordinates by the given divisor , and returns a reference to this vector.

另請參閱 operator*= ().

QVector2D &QVector2D:: operator/= (const QVector2D & vector )

Divides the components of this vector by the corresponding components in vector .

該函數在 Qt 5.5 引入。

另請參閱 operator*= ().

float &QVector2D:: operator[] ( int i )

Returns the component of the vector at index position i 作為可修改引用。

i must be a valid index position in the vector (i.e., 0 <= i < 2).

該函數在 Qt 5.2 引入。

float QVector2D:: operator[] ( int i ) const

Returns the component of the vector at index position i .

i must be a valid index position in the vector (i.e., 0 <= i < 2).

該函數在 Qt 5.2 引入。

相關非成員

bool qFuzzyCompare (const QVector2D & v1 , const QVector2D & v2 )

返迴 true if v1 and v2 are equal, allowing for a small fuzziness factor for floating-point comparisons; false otherwise.

bool operator!= (const QVector2D & v1 , const QVector2D & v2 )

返迴 true if v1 不等於 v2 ;否則返迴 false 。此運算符使用精確浮點比較。

const QVector2D operator* ( float factor , const QVector2D & vector )

返迴副本為給定 vector ,乘以給定 factor .

另請參閱 QVector2D::operator*= ().

const QVector2D operator* (const QVector2D & vector , float factor )

返迴副本為給定 vector ,乘以給定 factor .

另請參閱 QVector2D::operator*= ().

const QVector2D operator* (const QVector2D & v1 , const QVector2D & v2 )

Multiplies the components of v1 by the corresponding components in v2 .

const QVector2D operator+ (const QVector2D & v1 , const QVector2D & v2 )

返迴 QVector2D object that is the sum of the given vectors, v1 and v2 ;各分量分彆相加。

另請參閱 QVector2D::operator+= ().

const QVector2D operator- (const QVector2D & v1 , const QVector2D & v2 )

返迴 QVector2D 對象的形成是通過減去 v2 from v1 ;分彆減去各分量。

另請參閱 QVector2D::operator-= ().

const QVector2D operator- (const QVector2D & vector )

這是重載函數。

返迴 QVector2D object that is formed by changing the sign of the components of the given vector .

相當於 QVector2D(0,0) - vector .

const QVector2D operator/ (const QVector2D & vector , float divisor )

返迴 QVector2D object formed by dividing all three components of the given vector 通過給定 divisor .

另請參閱 QVector2D::operator/= ().

const QVector2D operator/ (const QVector2D & vector , const QVector2D & divisor )

返迴 QVector2D object formed by dividing components of the given vector by a respective components of the given divisor .

該函數在 Qt 5.5 引入。

另請參閱 QVector2D::operator/= ().

QDataStream & operator<< ( QDataStream & stream , const QVector2D & vector )

寫入給定 vector 到給定 stream 並返迴流引用。

另請參閱 序列化 Qt 數據類型 .

bool operator== (const QVector2D & v1 , const QVector2D & v2 )

返迴 true if v1 等於 v2 ;否則返迴 false 。此運算符使用精確浮點比較。

QDataStream & operator>> ( QDataStream & stream , QVector2D & vector )

Reads a 2D vector from the given stream 進給定 vector 並返迴流引用。

另請參閱 序列化 Qt 數據類型 .