Sur cette page

Qt3DCore::QNode Class

class Qt3DCore::QNode

QNode est la classe de base de toutes les classes de nœuds Qt3D utilisées pour construire une scène Qt3D. Plus d'informations...

Propriétés

Fonctions publiques

QNode(Qt3DCore::QNode *parent = nullptr)
bool blockNotifications(bool block)
Qt3DCore::QNodeVector childNodes() const
Qt3DCore::QNodeId id() const
bool isEnabled() const
bool notificationsBlocked() const
Qt3DCore::QNode *parentNode() const

Emplacements publics

void setEnabled(bool isEnabled)
void setParent(Qt3DCore::QNode *parent)

Signaux

void enabledChanged(bool enabled)
void nodeDestroyed()
void parentChanged(QObject *parent)
QNodePtr
QNodeVector
Qt3DCore::QNodeId qIdForNode(Qt3DCore::QNode *node)
Qt3DCore::QNodeIdVector qIdsForNodes(const T &nodes)

Description détaillée

Le rôle d'un QNode est déterminé par la relation parent/enfant entre les nœuds ( QObject ). En soi, un QNode n'a pas d'apparence visuelle ni de signification particulière, il est là comme moyen de construire une structure arborescente basée sur des nœuds.

Le parent d'une instance de QNode ne peut être qu'une autre instance de QNode.

Chaque instance de QNode possède un identifiant unique qui lui permet d'être reconnue par les autres instances.

Lorsque des propriétés sont définies sur une sous-classe de QNode, leur signal NOTIFY génère automatiquement des notifications que les aspects du backend Qt3D reçoivent.

Voir également QEntity et QComponent.

Documentation sur les propriétés

enabled : bool

Indique l'indicateur d'activation de QNode. Par défaut, un site QNode est toujours activé.

Remarque : l'interprétation de la signification de enabled dépend de l'aspect. Même si enabled est défini sur false, certains aspects peuvent toujours considérer le nœud d'une manière ou d'une autre. Ceci est documenté classe par classe.

Fonctions d'accès :

bool isEnabled() const
void setEnabled(bool isEnabled)

Signal du notificateur :

void enabledChanged(bool enabled)

parent : Qt3DCore::QNode*

Détient le parent immédiat QNode, ou null si le nœud n'a pas de parent.

La définition du parent notifiera aux aspects backend le changement de parent de l'instance QNode actuelle.

Remarque : si parent est nul, cela signifie que l'instance QNode a été supprimée de la scène.

Fonctions d'accès :

Qt3DCore::QNode *parentNode() const
void setParent(Qt3DCore::QNode *parent)

Notifier signal :

void parentChanged(QObject *parent)

Fonction membre Documentation

[explicit] QNode::QNode(Qt3DCore::QNode *parent = nullptr)

Crée une nouvelle instance de QNode avec le parent parent.

Note : Les aspects backend seront notifiés qu'une instance de QNode fait partie de la scène seulement si elle a un parent ; sauf si c'est le nœud racine de la scène Qt3D.

Voir aussi setParent().

bool QNode::blockNotifications(bool block)

Si block est true, les notifications de changement de propriété envoyées par cet objet aux aspects sont bloquées. Si block est false, ce blocage ne se produit pas.

La valeur de retour est la valeur précédente de notificationsBlocked().

Notez que les autres types de notification seront envoyés même si les notifications pour cet objet ont été bloquées.

Voir également notificationsBlocked().

Qt3DCore::QNodeVector QNode::childNodes() const

Renvoie une liste contenant les enfants QNode de l'instance QNode actuelle.

Qt3DCore::QNodeId QNode::id() const

Renvoie l'identifiant unique de l'instance QNode.

[signal] void QNode::nodeDestroyed()

Emis lorsque le nœud est détruit.

bool QNode::notificationsBlocked() const

Renvoie true si les notifications d'aspect sont bloquées ; sinon, renvoie false. Par défaut, les notifications ne sont pas bloquées.

Voir aussi blockNotifications().

Non-membres associés

[alias] QNodePtr

Un pointeur partagé pour QNode.

[alias] QNodeVector

Liste des pointeurs QNode.

Qt3DCore::QNodeId qIdForNode(Qt3DCore::QNode *node)

Renvoie l'identifiant du nœud pour node.

template <typename T> Qt3DCore::QNodeIdVector qIdsForNodes(const T &nodes)

Renvoie un vecteur d'identifiants de nœuds pour nodes.

© 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.