Spec-Zone.ru › Qt 5.15

Тип QML vector4d

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API