vector2d QML 值类型

vector2d 类型具有 x 和 y 属性。 更多...

详细介绍

vector2d 类型具有 x 和 y 属性,否则与 vector3d 类型相似。

type vector2d 的属性默认值是一个零向量。它的 x 和 y 都设置为 0。

有关 vector3d 类型的更多信息,请参阅文档。

要创建 vector2d 值,指定为 "x,y" 字符串,或单独定义组件,或使用 Qt.vector2d() 函数进行组合。

vector2d 类型具有以下幂等函数,可以在 QML 中调用

函数签名描述示例
real dotProduct(vector2d other)返回此 vector2d 与其他 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)返回此 vector2d 与其他 vector2d 相乘的结果 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)返回与此 vector2d 相乘的标量因子 factor 的 vector2d 结果
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)返回此 vector2d 与其他 vector2d 相加的结果 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)返回从其他 vector2d 中减去此 vector2d 的结果 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()返回此向量的归一化形式
var a = Qt.vector2d(1,2);
var b = a.normalized();
console.log(b.toString()); // QVector2D(0.447214, 0.894427)
real length()返回此 vector2d 长度的标量实数值
var a = Qt.vector2d(1,2);
var b = a.length();
console.log(b.toString()); // 2.23606797749979
vector3d toVector3d()返回将此 vector2d 转换为 vector3d 的结果 vector3d
var a = Qt.vector2d(1,2);
var b = a.toVector3d();
console.log(b.toString()); // QVector3D(1, 2, 0)
vector4d toVector4d()返回将此 vector2d 转换为 vector4d 的结果 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)如果此 vector2d 近似等于其他 vector2d,则返回 true。如果 this 的每个属性都在 epsilon 范围内,则近似将为真。请注意,epsilon 是一个可选参数,默认 epsilon 是 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

此值类型由 QtQuick 导入提供。

另请参阅 QML 值类型

© 2024 The Qt Company Ltd. 本文档中包含的文档贡献版权归其所有者所有。本提供的文档许可依据自由软件基金会发布的GNU自由文档许可证版本1.3。Qt及其相关标志是芬兰的The Qt Company Ltd.以及/或其他国家/地区的商标。商标的所有其他商标均为其所有者所有。