Sur cette page

vector4d QML Value Type

Un type « vector4d » comporte les attributs x, y, z et w. En savoir plus...

Import Statement: import QtQuick

Description détaillée

Un type « vector4d » possède les attributs « x », « y », « z » et « w » ; pour le reste, il est similaire au type « vector3d ».

Les propriétés de type « vector4d » ont par défaut un vecteur nul. Les attributs x, y,z et w sont alors définis sur « 0 ».

Pour plus d’informations, consultez la documentation relative au type « vector3d ».

Pour créer une valeur de type ` vector4d `, spécifiez-la sous la forme d’une chaîne « x,y,z,w », définissez ses composantes individuellement ou composez-la à l’aide de la fonction `Qt.vector4d()`.

Le type `vector4d` dispose des fonctions idempotentes suivantes, qui peuvent être appelées dans QML :

Signature de la fonctionDescriptionExemple
real dotProduct(vector4d other)Renvoie le résultat scalaire réel du produit scalaire du vecteur vector4 this avec le vecteur vector4 other
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)Renvoie le résultat de type vector4d obtenu en transformant le vector4d « this » à l'aide de la matrice 4x4 « matrix », la matrice étant appliquée après le vecteur
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 autre)Renvoie le vecteur 4D résultant de la multiplication d'this vecteur 4D par le vecteur 4D other
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)Renvoie le résultat vector4d de la multiplication d'this vector4d par le scalaire 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)Renvoie le résultat vector4d de l'addition du vecteur vector4d « this » avec le vecteur vector4d « other »
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)Renvoie le vecteur vector4d résultant de la soustraction du vecteur vector4d de l'other du vecteur vector4d de l'this
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)
vecteur4d normalisé()Renvoie la forme normalisée du vecteur 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)
longueur réelle()Renvoie la valeur scalaire réelle de la longueur de l'this vector3d
var a = Qt.vector4d(1,2,3,4);
var b = a.length();
console.log(b.toString()); // 5.477225575051661
vector2d toVector2d()Renvoie le vecteur 2D obtenu après conversion du vecteur 4D de this en vecteur 2D
var a = Qt.vector4d(1,2,3,4);
var b = a.toVector2d();
console.log(b.toString()); // QVector2D(1, 2)
vector3d toVector3d()Renvoie le vecteur 3D résultant de la conversion d'this, un vecteur 4D, en un vecteur 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)Renvoie « true » si le vecteur vector4d de this est approximativement égal au vecteur vector4d de other. L'approximation sera vraie si chaque attribut de this se situe à moins de epsilon de other. Notez que epsilon est un argument facultatif ; la valeur par défaut de epsilon est 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

Ce type de valeur est fourni par l’import QtQuick.

Voir également Types de valeurs QML.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.