En esta página

Qt3DCore::QNode Class

class Qt3DCore::QNode

QNode es la clase base de todas las clases de nodos Qt3D utilizadas para construir una escena Qt3D. Más...

Propiedades

Funciones públicas

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

Ranuras públicas

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

Señales

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

Descripción detallada

La propiedad de un QNode viene determinada por la relación padre/hijo entre nodos QObject. Por sí mismo, un QNode no tiene apariencia visual y ningún significado particular, está ahí como una forma de construir una estructura de árbol basada en nodos.

El padre de un QNode sólo puede ser otro QNode.

Cada instancia QNode tiene un id único que le permite ser reconocible de otras instancias.

Cuando se definen propiedades en una subclase de QNode, su señal NOTIFY generará automáticamente notificaciones que recibirán los aspectos backend de Qt3D.

Ver también QEntity y QComponent.

Documentación de Propiedades

enabled : bool

Contiene el indicador QNode activado. Por defecto, QNode siempre está habilitado.

Nota: la interpretación de lo que significa habilitado depende del aspecto. Incluso si enabled se establece en false, algunos aspectos pueden seguir considerando el nodo de alguna manera. Esto se documenta clase por clase.

Funciones de acceso:

bool isEnabled() const
void setEnabled(bool isEnabled)

Señal de notificador:

void enabledChanged(bool enabled)

parent : Qt3DCore::QNode*

Contiene el padre inmediato de QNode, o null si el nodo no tiene padre.

Establecer el padre notificará a los aspectos del backend sobre el cambio de padre de la instancia QNode actual.

Nota: si parent es nulo, notificará que la instancia actual QNode ha sido eliminada de la escena.

Funciones de acceso:

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

Señal de notificador:

void parentChanged(QObject *parent)

Documentación de la función miembro

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

Crea una nueva instancia QNode con el padre parent.

Nota: Los aspectos del backend serán notificados de que una instancia QNode es parte de la escena sólo si tiene un padre; a menos que éste sea el nodo raíz de la escena Qt3D.

Véase también setParent().

bool QNode::blockNotifications(bool block)

Si block es true, se bloquearán las notificaciones de cambio de propiedad enviadas por este objeto a aspectos. Si block es false, no se producirá tal bloqueo.

El valor de retorno es el valor anterior de notificationsBlocked().

Tenga en cuenta que los otros tipos de notificación se enviarán incluso si las notificaciones para este objeto han sido bloqueadas.

Véase también notificationsBlocked().

Qt3DCore::QNodeVector QNode::childNodes() const

Devuelve una lista con los QNode hijos de la instancia actual de QNode.

Qt3DCore::QNodeId QNode::id() const

Devuelve el identificador único de la instancia QNode.

[signal] void QNode::nodeDestroyed()

Se emite cuando se destruye el nodo.

bool QNode::notificationsBlocked() const

Devuelve true si las notificaciones de aspectos están bloqueadas; en caso contrario, devuelve false. Por defecto, las notificaciones no están bloqueadas.

Véase también blockNotifications().

No miembros relacionados

[alias] QNodePtr

Un puntero compartido para QNode.

[alias] QNodeVector

Lista de punteros QNode.

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

Devuelve el id de nodo para node.

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

Devuelve el vector de identificadores de nodos de 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.