Класс QNode
класс Qt3DCore::QNodeQNode — базовый класс всех классов узлов Qt3D, используемых для построения сцены Qt3D. Подробнее...
Свойства
Открытые функции
| 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 |
Открытые слоты
| void | setEnabled(bool isEnabled) |
| void | setParent(Qt3DCore::QNode *parent) |
Сигналы
| void | enabledChanged(bool enabled) |
| void | nodeDestroyed() |
| void | parentChanged(QObject *parent) |
Связанные нечлены
| QNodePtr | |
| QNodeVector | |
| Qt3DCore::QNodeId | qIdForNode(Qt3DCore::QNode *node) |
| Qt3DCore::QNodeIdVector | qIdsForNodes(const T &nodes) |
Подробное описание
Владение QNode определяется отношением «родитель/дочерний» объектов QObject между узлами. Само по себе QNode не имеет визуального представления и никакого особого значения, он служит для построения древовидной структуры узлов.
Родитель экземпляра QNode может быть только другим экземпляром QNode.
Каждый экземпляр QNode имеет уникальный идентификатор, который позволяет различать его от других экземпляров.
При определении свойств в подклассе QNode, их сигнал NOTIFY автоматически сгенерирует уведомления, которые будут получены аспектами Qt3D.
См. также QEntity и QComponent.
Документация по свойствам
enabled : bool
Содержит флаг enabled узла QNode. По умолчанию узел QNode всегда включён.
Примечание: интерпретация того, что означает включение, зависит от аспекта. Даже если enabled установлен в false, некоторые аспекты могут по-прежнему рассматривать узел каким-то образом. Это документировано для каждого класса.
Функции доступа:
| bool | isEnabled() const |
| void | setEnabled(bool isEnabled) |
Сигнал уведомления:
| void | enabledChanged(bool enabled) |
parent : Qt3DCore::QNode*
Содержит непосредственного родительского узла QNode или null, если у узла нет родителя.
Установка родителя уведомит аспекты об изменении родителя текущего экземпляра QNode.
Примечание: если parent имеет значение null, это фактически уведомит о том, что текущий экземпляр QNode был удалён из сцены.
Функции доступа:
| Qt3DCore::QNode * | parentNode() const |
| void | setParent(Qt3DCore::QNode *parent) |
Сигнал уведомления:
| void | parentChanged(QObject *parent) |
Документация по членам-функциям
QNode::QNode(Qt3DCore::QNode *parent = nullptr)
Создаёт новый экземпляр QNode с родителем parent.
Примечание: Аспекты backend будут уведомлены о том, что экземпляр QNode является частью сцены, только если у него есть родитель; если это корневой узел сцены Qt3D.
См. также setParent().
[signal] void QNode::nodeDestroyed()
Вызывается при уничтожении узла.
bool QNode::blockNotifications(bool block)
Если block имеет значение true, уведомления об изменениях свойств, отправляемые этим объектом аспектам, блокируются. Если block имеет значение false, такое блокирование не произойдёт.
Возвращаемое значение — предыдущее значение notificationsBlocked().
Обратите внимание, что другие типы уведомлений будут отправлены, даже если уведомления для этого объекта были заблокированы.
См. также notificationsBlocked().
Qt3DCore::QNodeVector QNode::childNodes() const
Возвращает список, заполненный дочерними узлами QNode текущего экземпляра QNode.
Qt3DCore::QNodeId QNode::id() const
Возвращает идентификатор, уникально определяющий экземпляр QNode.
bool QNode::notificationsBlocked() const
Возвращает true если уведомления о свойствах заблокированы; в противном случае возвращает false. По умолчанию уведомления не заблокированы.
См. также blockNotifications().
Связанные нечлены
[alias] QNodePtr
Умный указатель на QNode.
[alias] QNodeVector
Список указателей на QNode.
Qt3DCore::QNodeId qIdForNode(Qt3DCore::QNode *node)
Возвращает идентификатор узла node.
template <typename T> Qt3DCore::QNodeIdVector qIdsForNodes(const T &nodes)
Возвращает вектор идентификаторов узлов для nodes.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qt3dcore-qnode.html