QNode Class

class Qt3DCore ::QNode

QNode is the base class of all Qt3D node classes used to build a Qt3D scene. 更多...

头: #include <QNode>
CMake: find_package(Qt6 COMPONENTS 3dcore REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::3dcore)
qmake: QT += 3dcore
Since: Qt 5.5
继承: QObject
继承者: Qt3DAnimation::QAbstractAnimationClip , Qt3DAnimation::QAbstractClipBlendNode , Qt3DAnimation::QChannelMapper , Qt3DCore::QAbstractSkeleton , Qt3DCore::QAttribute , Qt3DCore::QBuffer , Qt3DCore::QComponent , Qt3DCore::QEntity , Qt3DCore::QGeometry , Qt3DCore::QGeometryView , Qt3DCore::QJoint , Qt3DInput::QAbstractActionInput , Qt3DInput::QAbstractAxisInput , Qt3DInput::QAbstractPhysicalDevice , Qt3DInput::QAction , Qt3DInput::QAxis , Qt3DInput::QAxisSetting , Qt3DRender::QAbstractTexture , Qt3DRender::QAbstractTextureImage , Qt3DRender::QEffect , Qt3DRender::QFilterKey , Qt3DRender::QFrameGraphNode , Qt3DRender::QParameter , Qt3DRender::QPickingSettings , Qt3DRender::QRenderPass , Qt3DRender::QRenderState , Qt3DRender::QRenderTargetOutput , Qt3DRender::QShaderImage , Qt3DRender::QShaderProgram , Qt3DRender::QShaderProgramBuilder , Qt3DRender::QTechnique ,和 Qt3DRender::Quick::QScene2D

特性

公共函数

  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 )

详细描述

The owernship of QNode is determined by the QObject parent/child relationship between nodes. By itself, a QNode has no visual appearance and no particular meaning, it is there as a way of building a node based tree structure.

The parent of a QNode instance can only be another QNode instance.

Each QNode instance has a unique id that allows it to be recognizable from other instances.

When properties are defined on a QNode subclass, their NOTIFY signal will automatically generate notifications that the Qt3D backend aspects will receive.

另请参阅 QEntity and QComponent .

特性文档编制

enabled : bool

保持 QNode enabled flag. By default a QNode is always enabled.

注意: the interpretation of what enabled means is aspect-dependent. Even if enabled is set to false , some aspects may still consider the node in some manner. This is documented on a class by class basis.

访问函数:

bool isEnabled () const
void setEnabled (bool isEnabled )

通知程序信号:

void enabledChanged (bool enabled )

parent : Qt3DCore::QNode *

Holds the immediate QNode parent, or null if the node has no parent.

Setting the parent will notify the backend aspects about current QNode instance's parent change.

注意: if parent happens to be null, this will actually notify that the current QNode instance was removed from the scene.

访问函数:

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

通知程序信号:

void parentChanged (QObject * parent )

成员函数文档编制

QNode:: QNode ( Qt3DCore::QNode * parent = nullptr)

Creates a new QNode instance with parent parent .

注意: The backend aspects will be notified that a QNode instance is part of the scene only if it has a parent; unless this is the root node of the Qt3D scene.

另请参阅 setParent ().

[signal] void QNode:: nodeDestroyed ()

Emitted when the node is destroyed.

bool QNode:: blockNotifications ( bool block )

block is true , property change notifications sent by this object to aspects are blocked. If block is false , no such blocking will occur.

返回值是先前值的 notificationsBlocked ().

Note that the other notification types will be sent even if the notifications for this object have been blocked.

另请参阅 notificationsBlocked ().

Qt3DCore::QNodeVector QNode:: childNodes () const

Returns a list filled with the QNode children of the current QNode 实例。

Qt3DCore::QNodeId QNode:: id () const

Returns the id that uniquely identifies the QNode 实例。

bool QNode:: notificationsBlocked () const

返回 true if aspect notifications are blocked; otherwise returns false . By default, notifications are not blocked.

另请参阅 blockNotifications ().

相关非成员

[alias] QNodePtr

共享指针为 QNode .

[alias] QNodeVector

List of QNode pointers.

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

Returns node id for node .

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

Returns vector of node ids for nodes .