QVector4D Class▲
-
Header: QVector4D
-
Since: Qt 4.6
-
qmake: QT += gui
-
Group: QVector4D is part of Rendering in 3D
Detailed Description▲
The QVector4D class can also be used to represent vertices in 4D space. We therefore do not need to provide a separate vertex class.
See Also▲
See also QQuaternion, QVector2D, QVector3D
Member Function Documentation▲
QVector4D::QVector4D()▲
Constructs a null vector, i.e. with coordinates (0, 0, 0, 0).
QVector4D::QVector4D(float xpos, float ypos, float zpos, float wpos)▲
Constructs a vector with coordinates (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)▲
Constructs a 4D vector from the specified 2D vector. The z and w coordinates are set to zero.
See Also▲
See also toVector2D()
QVector4D::QVector4D(const QVector2D &vector, float zpos, float wpos)▲
Constructs a 4D vector from the specified 2D vector. The z and w coordinates are set to zpos and wpos respectively.
See Also▲
See also toVector2D()
QVector4D::QVector4D(const QVector3D &vector)▲
Constructs a 4D vector from the specified 3D vector. The w coordinate is set to zero.
See Also▲
See also toVector3D()
QVector4D::QVector4D(const QVector3D &vector, float wpos)▲
Constructs a 4D vector from the specified 3D vector. The w coordinate is set to wpos.
See Also▲
See also toVector3D()
[static] float QVector4D::dotProduct(const QVector4D &v1, const QVector4D &v2)▲
Returns the dot product of v1 and v2.
bool QVector4D::isNull() const▲
Returns true if the x, y, z, and w coordinates are set to 0.0, otherwise returns false.
float QVector4D::length() const▲
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.
See Also▲
See also 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.
See Also▲
See also 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.
See Also▲
void QVector4D::setW(float w)▲
Sets the w coordinate of this point to the given w coordinate.
See Also▲
void QVector4D::setX(float x)▲
Sets the x coordinate of this point to the given x coordinate.
See Also▲
void QVector4D::setY(float y)▲
Sets the y coordinate of this point to the given y coordinate.
See Also▲
void QVector4D::setZ(float z)▲
Sets the z coordinate of this point to the given z coordinate.
See Also▲
QPoint QVector4D::toPoint() const▲
Returns the QPoint form of this 4D vector. The z and w coordinates are dropped.
See Also▲
See also toPointF(), toVector2D()
QPointF QVector4D::toPointF() const▲
Returns the QPointF form of this 4D vector. The z and w coordinates are dropped.
See Also▲
See also toPoint(), toVector2D()
QVector2D QVector4D::toVector2D() const▲
Returns the 2D vector form of this 4D vector, dropping the z and w coordinates.
See Also▲
See also 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.
See Also▲
See also toVector2D(), toVector3DAffine(), toPoint()
QVector3D QVector4D::toVector3D() const▲
Returns the 3D vector form of this 4D vector, dropping the w coordinate.
See Also▲
See also 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.
See Also▲
See also toVector3D(), toVector2DAffine(), toPoint()
float QVector4D::w() const▲
float QVector4D::x() const▲
float QVector4D::y() const▲
float QVector4D::z() const▲
QVariant QVector4D::operator QVariant() const▲
Returns the 4D vector as a QVariant.
QVector4D &QVector4D::operator*=(float factor)▲
Multiplies this vector's coordinates by the given factor, and returns a reference to this vector.
See Also▲
See also 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)▲
Adds the given vector to this vector and returns a reference to this vector.
See Also▲
See also operator-=()
QVector4D &QVector4D::operator-=(const QVector4D &vector)▲
Subtracts the given vector from this vector and returns a reference to this vector.
See Also▲
See also operator+=()
QVector4D &QVector4D::operator/=(float divisor)▲
Divides this vector's coordinates by the given divisor, and returns a reference to this vector.
See Also▲
See also operator*=()
[since 5.5] QVector4D &QVector4D::operator/=(const QVector4D &vector)▲
Divides the components of this vector by the corresponding components in vector.
This function was introduced in Qt 5.5.
See Also▲
See also operator*=()
[since 5.2] float &QVector4D::operator[](int i)▲
Returns the component of the vector at index position i as a modifiable reference.
i must be a valid index position in the vector (i.e., 0 <= i < 4).
This function was introduced in Qt 5.2.
[since 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).
This function was introduced in Qt 5.2.
Related Non-Members▲
bool qFuzzyCompare(const QVector4D &v1, const QVector4D &v2)▲
Returns 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)▲
Returns true if v1 is not equal to v2; otherwise returns false. This operator uses an exact floating-point comparison.
const QVector4D operator*(float factor, const QVector4D &vector)▲
Returns a copy of the given vector, multiplied by the given factor.
See Also▲
See also QVector4D::operator*=()
const QVector4D operator*(const QVector4D &vector, float factor)▲
Returns a copy of the given vector, multiplied by the given factor.
See Also▲
See also 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.
See Also▲
See also QVector4D::operator*=()
const QVector4D operator+(const QVector4D &v1, const QVector4D &v2)▲
Returns a QVector4D object that is the sum of the given vectors, v1 and v2; each component is added separately.
See Also▲
See also QVector4D::operator+=()
const QVector4D operator-(const QVector4D &v1, const QVector4D &v2)▲
Returns a QVector4D object that is formed by subtracting v2 from v1; each component is subtracted separately.
See Also▲
See also QVector4D::operator-=()
const QVector4D operator-(const QVector4D &vector)▲
This is an overloaded function.
Returns a QVector4D object that is formed by changing the sign of all three components of the given vector.
Equivalent to QVector4D(0,0,0,0) - vector.
const QVector4D operator/(const QVector4D &vector, float divisor)▲
Returns the QVector4D object formed by dividing all four components of the given vector by the given divisor.
See Also▲
See also QVector4D::operator/=()
[since 5.5] const QVector4D operator/(const QVector4D &vector, const QVector4D &divisor)▲
Returns the QVector4D object formed by dividing components of the given vector by a respective components of the given divisor.
This function was introduced in Qt 5.5.
See Also▲
See also QVector4D::operator/=()
QDataStream &operator<<(QDataStream &stream, const QVector4D &vector)▲
Writes the given vector to the given stream and returns a reference to the stream.
See Also▲
See also Serializing Qt Data Types
bool operator==(const QVector4D &v1, const QVector4D &v2)▲
Returns true if v1 is equal to v2; otherwise returns false. This operator uses an exact floating-point comparison.
QDataStream &operator>>(QDataStream &stream, QVector4D &vector)▲
Reads a 4D vector from the given stream into the given vector and returns a reference to the stream.
See Also▲
See also Serializing Qt Data Types