Тип QML vector4d
Тип vector4d имеет атрибуты x, y, z и w.
Тип vector4d имеет атрибуты x, y, z и w, в противном случае он аналогичен типу vector3d. Для получения дополнительной информации см. документацию по типу vector3d.
Для создания значения vector4d, укажите его как строку "x,y,z,w", или определите компоненты индивидуально, или составьте его с помощью функции Qt.vector4d().
Тип vector4d имеет следующие идемпотентные функции, которые можно вызывать в QML:
| Подпись функции | Описание | Пример |
|---|---|---|
| real dotProduct(vector4d other) | Возвращает скалярное вещественное значение результата скалярного произведения вектора this vector4d и вектора other vector4d |
var a = Qt.vector4d(1,2,3,4); var b = Qt.vector4d(5,6,7,8); var c = a.dotProduct(b); console.log(c); // 70 |
| vector4d times(matrix4x4 matrix) | Возвращает результат преобразования вектора this vector4d с помощью 4x4 матрицы matrix с применением матрицы после вектора |
var a = Qt.vector4d(1,2,3,4); var b = Qt.matrix4x4(4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19); var c = a.times(b); console.log(c.toString()); // QVector4D(120, 130, 140, 150) |
| vector4d times(vector4d other) | Возвращает результат умножения вектора this vector4d на вектор other vector4d |
var a = Qt.vector4d(1,2,3,4); var b = Qt.vector4d(5,6,7,8); var c = a.times(b); console.log(c.toString()); // QVector4D(5, 12, 21, 32) |
| vector4d times(real factor) | Возвращает результат умножения вектора this vector4d на скаляр factor |
var a = Qt.vector4d(1,2,3,4);
var b = 4.48;
var c = a.times(b);
console.log(c.toString()); // QVector3D(4.48, 8.96,
13.44, 17.92) |
| vector4d plus(vector4d other) | Возвращает результат сложения вектора this vector4d и вектора other vector4d |
var a = Qt.vector4d(1,2,3,4); var b = Qt.vector4d(5,6,7,8); var c = a.plus(b); console.log(c.toString()); // QVector4D(6, 8, 10, 12) |
| vector4d minus(vector4d other) | Возвращает результат вычитания вектора other vector4d из вектора this vector4d |
var a = Qt.vector4d(1,2,3,4); var b = Qt.vector4d(5,6,7,8); var c = a.minus(b); console.log(c.toString()); // QVector4D(-4, -4, -4, -4) |
| vector4d normalized() | Возвращает нормированную форму вектора this |
var a = Qt.vector4d(1,2,3,4); var b = a.normalized(); console.log(b.toString()); // QVector4D(0.182574, 0.365148, 0.547723, 0.730297) |
| real length() | Возвращает скалярное вещественное значение длины вектора this vector3d |
var a = Qt.vector4d(1,2,3,4); var b = a.length(); console.log(b.toString()); // 5.477225575051661 |
| vector2d toVector2d() | Возвращает результат преобразования вектора this vector4d в вектор2d |
var a = Qt.vector4d(1,2,3,4); var b = a.toVector2d(); console.log(b.toString()); // QVector2D(1, 2) |
| vector3d toVector3d() | Возвращает результат преобразования вектора this vector4d в вектор3d |
var a = Qt.vector4d(1,2,3,4); var b = a.toVector3d(); console.log(b.toString()); // QVector3D(1, 2, 3) |
| bool fuzzyEquals(vector4d other, real epsilon) | Возвращает true, если вектор this vector4d приблизительно равен вектору other vector4d. Приближение будет истинным, если каждый атрибут this находится в пределах epsilon от other. Обратите внимание, что epsilon — это необязательный аргумент, значение по умолчанию epsilon равно 0.00001. |
var a = Qt.vector4d(1,2,3,4); var b = Qt.vector4d(1.0001, 1.9998, 2.0001, 3.9999); var c = a.fuzzyEquals(b); // default epsilon var d = a.fuzzyEquals(b, 0.005); // supplied epsilon console.log(c + " " + d); // false true |
Этот базовый тип предоставляется импортом QtQuick.
См. также Основные типы QML.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qml-vector4d.html