Вектор 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/qt-5.12/qml-vector4d.html