Тип vector4d QML
Тип 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) | Возвращает вектор vector4d, результат преобразования вектора 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) | Возвращает вектор vector4d, результат умножения вектора 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) | Возвращает вектор vector4d, результат умножения вектора 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) | Возвращает вектор vector4d, результат сложения вектора 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) | Возвращает вектор vector4d, результат вычитания вектора 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() | Возвращает вектор vector2d, результат преобразования вектора this vector4d в вектор vector2d |
var a = Qt.vector4d(1,2,3,4); var b = a.toVector2d(); console.log(b.toString()); // QVector2D(1, 2) |
| vector3d toVector3d() | Возвращает вектор vector3d, результат преобразования вектора this vector4d в вектор vector3d |
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/archives/qt-5.11/qml-vector4d.html