QVector4D 类

The QVector4D class represents a vector or vertex in 4D space. 更多...

头: #include <QVector4D>
qmake: QT += gui
Since: Qt 4.6

公共函数

QVector4D ()
QVector4D (float xpos , float ypos , float zpos , float wpos )
QVector4D (const QPoint & point )
QVector4D (const QPointF & point )
QVector4D (const QVector2D & vector )
QVector4D (const QVector2D & vector , float zpos , float wpos )
QVector4D (const QVector3D & vector )
QVector4D (const QVector3D & vector , float wpos )
bool isNull () const
float length () const
float lengthSquared () const
void normalize ()
QVector4D normalized () const
void setW (float w )
void setX (float x )
void setY (float y )
void setZ (float z )
QPoint toPoint () const
QPointF toPointF () const
QVector2D toVector2D () const
QVector2D toVector2DAffine () const
QVector3D toVector3D () const
QVector3D toVector3DAffine () const
float w () const
float x () const
float y () const
float z () const
QVariant operator QVariant () const
QVector4D & operator*= (float factor )
QVector4D & operator*= (const QVector4D & vector )
QVector4D & operator+= (const QVector4D & vector )
QVector4D & operator-= (const QVector4D & vector )
QVector4D & operator/= (float divisor )
QVector4D & operator/= (const QVector4D & vector )
float & operator[] (int i )
float operator[] (int i ) const

静态公共成员

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

详细描述

The QVector4D class represents a vector or vertex in 4D space.

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

另请参阅 QQuaternion , QVector2D ,和 QVector3D .

成员函数文档编制

QVector4D:: QVector4D ()

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

QVector4D:: QVector4D ( float xpos , float ypos , float zpos , float wpos )

构造向量采用坐标 ( xpos , ypos , zpos , wpos ).

QVector4D:: QVector4D (const QPoint & point )

Constructs a vector with x and y coordinates from a 2D point , and z and w coordinates of 0.

QVector4D:: QVector4D (const QPointF & point )

Constructs a vector with x and y coordinates from a 2D point , and z and w coordinates of 0.

QVector4D:: QVector4D (const QVector2D & vector )

构造 4D 向量从指定 2D vector . The z and w coordinates are set to zero.

另请参阅 toVector2D ().

QVector4D:: QVector4D (const QVector2D & vector , float zpos , float wpos )

构造 4D 向量从指定 2D vector . The z and w coordinates are set to zpos and wpos 分别。

另请参阅 toVector2D ().

QVector4D:: QVector4D (const QVector3D & vector )

构造 4D 向量从指定 3D vector . The w coordinate is set to zero.

另请参阅 toVector3D ().

QVector4D:: QVector4D (const QVector3D & vector , float wpos )

构造 4D 向量从指定 3D vector 。w 坐标被设为 wpos .

另请参阅 toVector3D ().

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

返回点积为 v1 and v2 .

bool QVector4D:: isNull () const

返回 true 若 x、y、z 和 w 坐标被设为 0.0,否则返回 false .

float QVector4D:: length () const

从原点返回向量长度。

另请参阅 lengthSquared () 和 normalized ().

float QVector4D:: 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 QVector4D:: 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 ().

QVector4D QVector4D:: 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 QVector4D:: setW ( float w )

Sets the w coordinate of this point to the given w 坐标。

另请参阅 w (), setX (), setY (),和 setZ ().

void QVector4D:: setX ( float x )

将此点的 X 坐标设为给定 x 坐标。

另请参阅 x (), setY (), setZ (),和 setW ().

void QVector4D:: setY ( float y )

将此点的 Y 坐标设为给定 y 坐标。

另请参阅 y (), setX (), setZ (),和 setW ().

void QVector4D:: setZ ( float z )

Sets the z coordinate of this point to the given z 坐标。

另请参阅 z (), setX (), setY (),和 setW ().

QPoint QVector4D:: toPoint () const

返回 QPoint form of this 4D vector. The z and w coordinates are dropped.

另请参阅 toPointF () 和 toVector2D ().

QPointF QVector4D:: toPointF () const

返回 QPointF form of this 4D vector. The z and w coordinates are dropped.

另请参阅 toPoint () 和 toVector2D ().

QVector2D QVector4D:: toVector2D () const

Returns the 2D vector form of this 4D vector, dropping the z and w coordinates.

另请参阅 toVector2DAffine (), toVector3D (),和 toPoint ().

QVector2D QVector4D:: toVector2DAffine () const

Returns the 2D vector form of this 4D vector, dividing the x and y coordinates by the w coordinate and dropping the z coordinate. Returns a null vector if w is zero.

另请参阅 toVector2D (), toVector3DAffine (),和 toPoint ().

QVector3D QVector4D:: toVector3D () const

Returns the 3D vector form of this 4D vector, dropping the w coordinate.

另请参阅 toVector3DAffine (), toVector2D (),和 toPoint ().

QVector3D QVector4D:: toVector3DAffine () const

Returns the 3D vector form of this 4D vector, dividing the x, y, and z coordinates by the w coordinate. Returns a null vector if w is zero.

另请参阅 toVector3D (), toVector2DAffine (),和 toPoint ().

float QVector4D:: w () const

返回此点的 w 坐标。

另请参阅 setW (), x (), y (),和 z ().

float QVector4D:: x () const

返回此点的 X 坐标。

另请参阅 setX (), y (), z (),和 w ().

float QVector4D:: y () const

返回此点的 Y 坐标。

另请参阅 setY (), x (), z (),和 w ().

float QVector4D:: z () const

返回此点的 z 坐标。

另请参阅 setZ (), x (), y (),和 w ().

QVariant QVector4D:: operator QVariant () const

将 4D 向量返回作为 QVariant .

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

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

另请参阅 operator/= ().

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

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

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

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

另请参阅 operator-= ().

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

减去给定 vector from this vector and returns a reference to this vector.

另请参阅 operator+= ().

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

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

另请参阅 operator*= ().

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

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

该函数在 Qt 5.5 引入。

另请参阅 operator*= ().

float &QVector4D:: 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 < 4).

该函数在 Qt 5.2 引入。

float QVector4D:: 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 < 4).

该函数在 Qt 5.2 引入。

相关非成员

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

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

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

返回 true if v1 不等于 v2 ;否则返回 false 。此运算符使用精确浮点比较。

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

返回副本为给定 vector ,乘以给定 factor .

另请参阅 QVector4D::operator*= ().

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

返回副本为给定 vector ,乘以给定 factor .

另请参阅 QVector4D::operator*= ().

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

Returns the vector consisting of the multiplication of the components from v1 and v2 .

另请参阅 QVector4D::operator*= ().

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

返回 QVector4D object that is the sum of the given vectors, v1 and v2 ;分别相加各分量。

另请参阅 QVector4D::operator+= ().

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

返回 QVector4D 对象的形成是通过减去 v2 from v1 ;分别减去各分量。

另请参阅 QVector4D::operator-= ().

const QVector4D operator- (const QVector4D & vector )

这是重载函数。

返回 QVector4D object that is formed by changing the sign of all three components of the given vector .

相当于 QVector4D(0,0,0,0) - vector .

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

返回 QVector4D object formed by dividing all four components of the given vector 通过给定 divisor .

另请参阅 QVector4D::operator/= ().

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

返回 QVector4D object formed by dividing components of the given vector by a respective components of the given divisor .

该函数在 Qt 5.5 引入。

另请参阅 QVector4D::operator/= ().

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

写入给定 vector 到给定 stream 并返回流引用。

另请参阅 序列化 Qt 数据类型 .

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

返回 true if v1 等于 v2 ;否则返回 false 。此运算符使用精确浮点比较。

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

读取 4D 向量从给定 stream 进给定 vector 并返回流引用。

另请参阅 序列化 Qt 数据类型 .