A vector2d
type has x
and y
attributes, otherwise it is similar to the vector3d
type. Please see the documentation about the vector3d
type for more information.
To create a vector2d
value, specify it as a "x,y" string, or define the components individually, or compose it with the Qt.vector2d() function.
The vector2d type has the following idempotent functions which can be invoked in QML:
Function Signature | Description | Example |
---|---|---|
real dotProduct(vector2d other) | Returns the scalar real result of the dot product of this vector2d with the other vector2d |
var a = Qt.vector2d(1,2); var b = Qt.vector2d(3,4); var c = a.dotProduct(b); console.log(c); // 11 |
vector2d times(vector2d other) | Returns the vector2d result of multiplying this vector2d with the other vector2d |
var a = Qt.vector2d(1,2); var b = Qt.vector2d(3,4); var c = a.times(b); console.log(c.toString()); // QVector2D(3, 8) |
vector2d times(real factor) | Returns the vector2d result of multiplying this vector2d with the scalar factor
|
var a = Qt.vector2d(1,2); var b = 4.48; var c = a.times(b); console.log(c.toString()); // QVector2D(4.48, 8.96) |
vector2d plus(vector2d other) | Returns the vector2d result of the addition of this vector2d with the other vector2d |
var a = Qt.vector2d(1,2); var b = Qt.vector2d(3,4); var c = a.plus(b); console.log(c.toString()); // QVector2D(4, 6) |
vector2d minus(vector2d other) | Returns the vector2d result of the subtraction of other vector2d from this vector2d |
var a = Qt.vector2d(1,2); var b = Qt.vector2d(3,4); var c = a.minus(b); console.log(c.toString()); // QVector2D(-2, -2) |
vector2d normalized() | Returns the normalized form of this vector |
var a = Qt.vector2d(1,2); var b = a.normalized(); console.log(b.toString()); // QVector2D(0.447214, 0.894427) |
real length() | Returns the scalar real value of the length of this vector2d |
var a = Qt.vector2d(1,2); var b = a.length(); console.log(b.toString()); // 2.23606797749979 |
vector3d toVector3d() | Returns the vector3d result of converting this vector2d to a vector3d |
var a = Qt.vector2d(1,2); var b = a.toVector3d(); console.log(b.toString()); // QVector3D(1, 2, 0) |
vector4d toVector4d() | Returns the vector4d result of converting this vector2d to a vector4d |
var a = Qt.vector2d(1,2); var b = a.toVector4d(); console.log(b.toString()); // QVector4D(1, 2, 0, 0) |
bool fuzzyEquals(vector2d other, real epsilon) | Returns true if this vector2d is approximately equal to the other vector2d. The approximation will be true if each attribute of this is within epsilon of other . Note that epsilon is an optional argument, the default epsilon is 0.00001. |
var a = Qt.vector2d(1,2); var b = Qt.vector2d(1.0001, 1.9998); var c = a.fuzzyEquals(b); // default epsilon var d = a.fuzzyEquals(b, 0.005); // supplied epsilon console.log(c + " " + d); // false true |
This basic type is provided by the QtQuick import.
See also QML Basic Types.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qml-vector2d.html