このページでは

Qt3DCore::QNode Class

class Qt3DCore::QNode

QNode は、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 インスタンスには一意の ID があり、それによって他のインスタンスと区別することができます。

QNode のサブクラスでプロパティが定義されると、その NOTIFY シグナルによって、Qt3D バックエンドが受信する通知が自動的に生成されます。

QEntity およびQComponentも参照してください 。

プロパティのドキュメント

enabled : bool

「QNode 」の有効フラグを設定します。デフォルトでは、QNode は常に有効になっています。

注: 「有効」の意味の解釈は アスペクトによって異なります。たとえ「有効」がfalse に設定されていても、一部のアスペクトは依然として何らかの形でそのノードを考慮する場合があります。これについては、クラスごとにドキュメントに記載されています。

アクセス関数:

bool isEnabled() const
void setEnabled(bool isEnabled)

Notifierシグナル:

void enabledChanged(bool enabled)

parent : Qt3DCore::QNode*

QNode の直上の親を保持します。ノードに親がない場合はnullになります。

親を設定すると、現在のQNode インスタンスの親が変更されたことがバックエンドのアスペクトに通知されます。

注: parent がnullの場合 、これは実際には、現在のQNode インスタンスがシーンから削除されたことを通知することになります。

アクセス関数:

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

Notifierシグナル:

void parentChanged(QObject *parent)

メンバ関数のドキュメント

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

親ノードparent を持つ新しいQNodeインスタンスを作成します。

注: QNodeインスタンスがシーンの一部であることは、親ノードがある場合にのみバックエンド側に 通知されます。ただし、そのインスタンスがQt3Dシーンのルートノードである場合はこの限りではありません。

setParent()も参照してください 。

bool QNode::blockNotifications(bool block)

block がtrue の場合、このオブジェクトからアスペクトへ送信されるプロパティ変更通知はブロックされます。block がfalse の場合、そのようなブロックは発生しません。

戻り値は、notificationsBlocked() の以前の値です。

なお、このオブジェクトに対する通知がブロックされている場合でも、他の種類の通知は送信されることに注意してください。

notificationsBlocked()も参照してください 。

Qt3DCore::QNodeVector QNode::childNodes() const

現在のQNode インスタンスの子要素であるQNode をすべて含むリストを返します。

Qt3DCore::QNodeId QNode::id() const

QNode インスタンスを一意に識別するIDを返します。

[signal] void QNode::nodeDestroyed()

ノードが破棄されたときに発せられます。

bool QNode::notificationsBlocked() const

アスペクト通知がブロックされている場合は `true ` を返し、そうでない場合は `false` を返します。デフォルトでは、通知はブロックされません。

blockNotifications()も参照してください 。

関連する非メンバー

[alias] QNodePtr

QNode 用の共有ポインタ。

[alias] QNodeVector

QNode のポインタ一覧。

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

node のノードIDを返します。

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

nodes のノード ID のベクトルを返します。

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