Node QML Type
Composant de base d'un objet existant dans une scène 3D. Plus d'informations...
| Import Statement: | import QtQuick3D |
| Inherits: | |
| Inherited By: | 36 typesAffector3D, Attractor3D, AxisHelper, Camera, CustomCamera, DirectionalLight, FrustumCamera, Gravity3D, InstanceRepeater, Joint, Light, Loader3D, LodManager, LookAtNode, Model, OrthographicCamera, ParticleEmitter3D, ParticleSystem3D, PerspectiveCamera, PointLight, PointRotator3D, ReflectionProbe, Repeater3D, Repeller3D, RuntimeLoader, ScaleAffector3D, Skeleton, SpotLight, TrailEmitter3D, Wander3D, XrCamera, XrController, XrHandModel, XrItem, XrOrigin, and XrView |
Propriétés
- eulerRotation : vector3d
- forward : vector3d
- layers : int
- opacity : real
- pivot : vector3d
- position : vector3d
- right : vector3d
- rotation : quaternion
- scale : vector3d
- scenePosition : vector3d
- sceneRotation : quaternion
- sceneScale : vector3d
- sceneTransform : matrix4x4
- staticFlags : int
- up : vector3d
- visible : bool
- x : real
- y : real
- z : real
Méthodes
- vector3d mapDirectionFromNode(QtQuick3D::Node node, vector3d localDirection)
- vector3d mapDirectionFromScene(vector3d sceneDirection)
- vector3d mapDirectionToNode(QtQuick3D::Node node, vector3d localDirection)
- vector3d mapDirectionToScene(vector3d localDirection)
- vector3d mapPositionFromNode(QtQuick3D::Node node, vector3d localPosition)
- vector3d mapPositionFromScene(vector3d scenePosition)
- vector3d mapPositionToNode(QtQuick3D::Node node, vector3d localPosition)
- vector3d mapPositionToScene(vector3d localPosition)
- void rotate(real degrees, vector3d axis, enumeration space)
Description détaillée
Le type Node sert de classe de base pour d'autres types spatiaux, tels que Model, Camera, Light. Ces objets représentent une entité qui existe dans la scène 3D, du fait qu'elle a une position et d'autres propriétés dans le monde 3D. À l'exception du nœud racine, tous les types de nœuds sont transformés par rapport à leur nœud parent, c'est-à-dire en coordonnées locales. À bien des égards, le type Node a la même fonction dans les scènes 3D Qt Quick que Item dans les scènes Qt Quick.
Outre les types dérivés de Node, il est également possible d'associer d'autres types à un Node. Il s'agit notamment des instances QObject, où le nœud sert simplement d'élément QObject parent, et des élémentsQt Quick .
Envelopper d'autres objets dans le but de les regrouper en composants ou en sous-arbres peut être un moyen pratique d'animer, par exemple, un groupe de nœuds dans son ensemble. Cet extrait montre comment utiliser Node pour animer une caméra :
Node { PerspectiveCamera { position: Qt.vector3d(0, 0, -600) } SequentialAnimation on eulerRotation.y { loops: Animation.Infinite PropertyAnimation { duration: 5000 from: 0 to: 360 } } }
Node doit également être utilisé si l'on crée une scène en dehors de View3D, par exemple pour changer de scène à la volée ou pour montrer la même scène sur plusieurs vues.
Node {
id: standAloneScene
DirectionalLight {}
Model {
source: "#Sphere"
materials: [ DefaultMaterial {} ]
}
PerspectiveCamera {
z: 600
}
}
View3D {
importScene: standAloneScene
}Documentation sur les propriétés
eulerRotation : vector3d
Cette propriété contient les valeurs de rotation pour les axes x, y et z. Ces valeurs sont stockées sous la forme d'un vecteur3d. Ces valeurs sont stockées sous la forme d'un vecteur3d. L'ordre de rotation est supposé être ZXY.
Voir également QQuaternion::fromEulerAngles().
forward : vector3d [read-only]
Cette propriété renvoie un vecteur normalisé de la direction avant des nœuds dans l'espace de la scène.
Voir aussi up, right, et mapDirectionToScene.
layers : int
Cette propriété définit les couches de contenu auxquelles ce nœud appartient. Les couches peuvent être utilisées pour regrouper les nœuds qui appartiennent à la même catégorie, par exemple pour qu'ils soient rendus ensemble ou pour qu'ils soient filtrés du rendu. En définissant cette propriété sur le site Camera actif, la caméra ne rendra que les nœuds appartenant aux couches spécifiées. La valeur est un masque de bits, où chaque bit représente une couche.
Par défaut, les nœuds sont affectés à la couche main, qui est la couche 0.
Voir également ContentLayer.
opacity : real
Cette propriété contient la valeur d'opacité locale du nœud. Les objets nœuds n'étant pas nécessairement visibles, cette valeur peut ne pas avoir d'effet, mais elle est héritée par tous les enfants du nœud, qui peuvent être visibles.
pivot : vector3d
Cette propriété contient les valeurs de pivot pour les axes x, y et z. Ces valeurs sont utilisées comme points de pivot lors de l'application de rotations au nœud. Ces valeurs sont utilisées comme points de pivot lors de l'application de rotations au nœud.
position : vector3d
Cette propriété contient la translation de la position dans l'espace de coordonnées locales.
right : vector3d [read-only]
Cette propriété renvoie un vecteur normalisé de la direction droite des nœuds dans l'espace de la scène.
Voir aussi forward, up, et mapDirectionToScene.
rotation : quaternion
Cette propriété contient les valeurs de rotation du nœud. Ces valeurs sont stockées sous forme de quaternions.
scale : vector3d
Cette propriété contient les valeurs d'échelle pour les axes x, y et z.
scenePosition : vector3d [read-only]
Cette propriété renvoie la position du nœud dans l'espace de la scène.
Remarque : cette position est parfois appelée "position globale". Mais alors dans le sens "global dans le monde 3D", et non pas "global à l'écran ou au bureau" (ce qui est généralement l'interprétation dans d'autres API de Qt).
Remarque : la position est indiquée dans la même orientation que le nœud.
Voir également mapPositionToScene.
sceneRotation : quaternion [read-only]
Cette propriété renvoie la rotation du nœud dans l'espace de la scène.
sceneScale : vector3d [read-only]
Cette propriété renvoie l'échelle du nœud dans l'espace de la scène.
sceneTransform : matrix4x4 [read-only]
Cette propriété renvoie la matrice de transformation globale pour ce nœud.
Remarque : la valeur retournée sera en coordonnées droites.
staticFlags : int
Cette propriété définit les drapeaux statiques utilisés pour évaluer le rendu du nœud. Actuellement, elle ne fait rien d'autre que d'agir en tant que placeholder pour une future implémentation.
up : vector3d [read-only]
Cette propriété renvoie un vecteur normalisé de la direction du nœud vers le haut dans l'espace de la scène.
Voir aussi forward, right, et mapDirectionToScene.
visible : bool
Lorsque cette propriété est vraie, le nœud (et ses enfants) peut être visible.
x : real
Cette propriété contient la valeur x de la translation de la position dans l'espace de coordonnées locales.
Voir aussi position.
y : real
Cette propriété contient la valeur y de la translation de la position dans l'espace de coordonnées locales.
Voir aussi position.
z : real
Cette propriété contient la valeur z de la translation de la position dans l'espace de coordonnées locales.
Voir aussi position.
Documentation de la méthode
vector3d mapDirectionFromNode(QtQuick3D::Node node, vector3d localDirection)
Transforme localDirection de l'espace local de node à l'espace local de ce nœud. La valeur de retour n'est pas affectée par l'échelle (héritée) ou la position du nœud.
Remarque : la valeur de retour aura la même longueur que localDirection (c'est-à-dire qu'elle ne sera pas normalisée).
Remarque : si node est nul, localDirection est interprété comme s'il s'agissait des coordonnées de l'espace scénique.
Voir aussi mapDirectionToNode, mapDirectionFromScene, et mapDirectionToScene.
vector3d mapDirectionFromScene(vector3d sceneDirection)
Transforme sceneDirection de l'espace de la scène à l'espace local. La valeur de retour n'est pas affectée par l'échelle (héritée) ou la position du noeud.
Remarque : la valeur de retour aura la même longueur que sceneDirection (c'est-à-dire qu'elle ne sera pas normalisée).
Voir aussi mapDirectionToScene, mapDirectionToNode, et mapDirectionFromNode.
vector3d mapDirectionToNode(QtQuick3D::Node node, vector3d localDirection)
Transforme localDirection de l'espace local de ce nœud à l'espace local de node. La valeur de retour n'est pas affectée par l'échelle (héritée) ou la position du nœud.
Remarque : la valeur de retour aura la même longueur que localDirection (c'est-à-dire qu'elle ne sera pas normalisée).
Remarque : si node est nul, la direction renvoyée sera transformée en coordonnées de l'espace scénique.
Voir également mapDirectionFromNode, mapDirectionFromScene, et mapDirectionToScene.
vector3d mapDirectionToScene(vector3d localDirection)
Transforme localDirection de l'espace local à l'espace de la scène. La valeur de retour n'est pas affectée par l'échelle (héritée) ou la position du noeud.
Remarque : la valeur de retour aura la même longueur que localDirection (c'est-à-dire qu'elle ne sera pas normalisée).
Voir aussi mapDirectionFromScene, mapDirectionToNode, et mapDirectionFromNode.
vector3d mapPositionFromNode(QtQuick3D::Node node, vector3d localPosition)
Transforme localPosition de l'espace local de node à l'espace local de ce nœud.
Remarque : si node est nul, localPosition est interprété comme s'il s'agissait des coordonnées de l'espace de la scène.
Voir également mapPositionToScene, mapPositionFromScene, et mapPositionToNode.
vector3d mapPositionFromScene(vector3d scenePosition)
Transforme scenePosition de l'espace de la scène à l'espace local.
Voir également mapPositionToScene, mapPositionToNode, et mapPositionFromNode.
vector3d mapPositionToNode(QtQuick3D::Node node, vector3d localPosition)
Transforme localPosition de l'espace local de ce nœud à l'espace local de node.
Remarque : si node est nul, localPosition sera transformé en coordonnées de l'espace de la scène.
Voir également mapPositionToScene, mapPositionFromScene, et mapPositionFromNode.
vector3d mapPositionToScene(vector3d localPosition)
Transforme localPosition de l'espace local à l'espace de la scène.
Remarque : l'"espace de la scène" est parfois appelé "espace global". Mais alors dans le sens "global dans le monde 3D", et non "global à l'écran ou au bureau" (ce qui est généralement l'interprétation dans d'autres API de Qt).
Voir également mapPositionFromScene, mapPositionToNode, et mapPositionFromNode.
void rotate(real degrees, vector3d axis, enumeration space)
Fait pivoter ce nœud autour d'une adresse axis en fonction de l'adresse degrees. La rotation spécifiée sera ajoutée à la rotation actuelle du nœud. L'axe peut être spécifié par rapport à différents spaces.
| Constante | Description de l'axe |
|---|---|
Node.LocalSpace | L'axe est relatif à l'orientation locale de ce nœud. |
Node.ParentSpace | L'axe est relatif à l'orientation locale du nœud parent. |
Node.SceneSpace | L'axe est relatif à la scène. |
© 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.