このページでは

Q3DScene Class

Q3DScene クラスは、表示されている 3D シーンに関する情報を提供します。詳細...

ヘッダー: #include <Q3DScene>
CMake: find_package(Qt6 REQUIRED COMPONENTS Graphs)
target_link_libraries(mytarget PRIVATE Qt6::Graphs)
qmake: QT += graphs
QML内: Scene3D
継承元: QObject

プロパティ

パブリック関数

Q3DScene(QObject *parent = nullptr)
virtual ~Q3DScene() override
qreal devicePixelRatio() const
QPoint graphPositionQuery() const
QPoint invalidSelectionPoint() const
bool isPointInPrimarySubView(QPoint point)
bool isPointInSecondarySubView(QPoint point)
bool isSecondarySubviewOnTop() const
bool isSlicingActive() const
QRect primarySubViewport() const
QRect secondarySubViewport() const
QPoint selectionQueryPosition() const
void setDevicePixelRatio(qreal pixelRatio)
void setGraphPositionQuery(QPoint point)
void setPrimarySubViewport(QRect primarySubViewport)
void setSecondarySubViewport(QRect secondarySubViewport)
void setSecondarySubviewOnTop(bool isSecondaryOnTop)
void setSelectionQueryPosition(QPoint point)
void setSlicingActive(bool isSlicing)
QRect viewport() const

シグナル

void devicePixelRatioChanged(qreal pixelRatio)
void graphPositionQueryChanged(QPoint position)
void primarySubViewportChanged(QRect subViewport)
void secondarySubViewportChanged(QRect subViewport)
void secondarySubviewOnTopChanged(bool isSecondaryOnTop)
void selectionQueryPositionChanged(QPoint position)
void slicingActiveChanged(bool isSlicingActive)
void viewportChanged(QRect viewport)

詳細な説明

3D シーンには、1 台のアクティブなカメラと 1 つのアクティブな光源が含まれています。可視化されるデータは、固定された位置にあるものと想定されます。

また、3D シーンは、グラフのレンダリングが行われるビューポート、メインの 3D グラフビューが配置されるビューポート内のプライマリサブビューポート、およびデータの 2D スライスビューが配置されるセカンダリサブビューポートを追跡します。 サブビューポートのサイズ変更は、デフォルトではQ3DScene によって行われます。このサイズ変更の挙動を上書きするには、viewportChanged()とslicingActiveChanged()の両方のシグナルをリッスンし、それに応じてサブビューポートを再計算する必要があります。

また、シーンには、セカンダリ 2D スライスビューが現在アクティブかどうかを追跡するためのフラグがあります。

注: すべてのグラフがセカンダリ2Dスライシングビューをサポートしているわけではありません 。

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

devicePixelRatio : qreal

このプロパティには、入力座標をピクセル座標に変換する際に使用されるデバイスピクセル比が格納されます。

アクセス関数:

qreal devicePixelRatio() const
void setDevicePixelRatio(qreal pixelRatio)

通知信号:

void devicePixelRatioChanged(qreal pixelRatio)

graphPositionQuery : QPoint

このプロパティには、シーンがグラフの位置クエリとして処理すべきユーザー入力の座標が格納されます。

このプロパティがinvalidSelectionPoint()以外の値に設定されている場合、グラフはプライマリビューポート内の指定された座標とグラフ上の位置を照合しようとします。レンダリングパス終了後、このプロパティはデフォルト状態のinvalidSelectionPoint()に戻ります。照合されたグラフ上の位置は、次のレンダリングパス終了後にQ3DGraphsWidgetItem::queriedGraphPosition プロパティから読み取ることができます。

特定の画面位置に対応する「唯一の正しい」3D座標は存在しないため、一貫性を保つために、クエリは常にグラフを囲む見えないボックスの内側を基準に行われます。

注:棒 グラフでは、グラフの床面レベルでのみグラフ位置のクエリが可能です。

アクセス関数:

QPoint graphPositionQuery() const
void setGraphPositionQuery(QPoint point)

通知シグナル:

void graphPositionQueryChanged(QPoint position)

Q3DGraphsWidgetItem::queriedGraphPositionも参照してください 。

[read-only] invalidSelectionPoint : const QPoint

このプロパティには、無効な選択位置を表す点が格納されています。

アクセス関数:

QPoint invalidSelectionPoint() const

primarySubViewport : QRect

このプロパティは、グラフのプライマリビューが対象となるビューポート内の、現在のサブビューポートの矩形を保持します。

プライマリ・サブビューポートが明示的に設定されていない場合、そのサイズは `viewport()` の 5 分の 1 になります。

注: primarySubViewport をビューポートより大きく設定したり 、ビューポートの外側に設定したりすると 、ビューポートのサイズがそれに応じて変更されます。

アクセス関数:

QRect primarySubViewport() const
void setPrimarySubViewport(QRect primarySubViewport)

Notifier シグナル:

void primarySubViewportChanged(QRect subViewport)

secondarySubViewport : QRect

このプロパティは、ビューポート内のセカンダリ・ビューポートの矩形を保持します。

セカンダリビューポートは、一部のグラフで 2D スライスビューを描画するために使用されます。明示的に設定されていない場合、ビューポートのサイズと同じになります。

注: セカンダリ・サブビューポートがビューポートよりも大きい場合や ビューポートの外側にある場合 、ビューポートはそれに応じてサイズ変更されます。

アクセス関数:

QRect secondarySubViewport() const
void setSecondarySubViewport(QRect secondarySubViewport)

通知シグナル:

void secondarySubViewportChanged(QRect subViewport)

secondarySubviewOnTop : bool

このプロパティは、2Dスライスビューと3Dビューのどちらが上に描画されるかを決定します。

アクセス関数:

bool isSecondarySubviewOnTop() const
void setSecondarySubviewOnTop(bool isSecondaryOnTop)

通知シグナル:

void secondarySubviewOnTopChanged(bool isSecondaryOnTop)

selectionQueryPosition : QPoint

このプロパティには、シーンによって選択として処理されるべきユーザー入力の座標が格納されます。

このプロパティが `invalidSelectionPoint()` 以外の値に設定されている場合、グラフはプライマリビューポート内の指定された座標にあるデータ項目、軸ラベル、またはカスタム項目を選択しようとします。レンダリング処理が終了すると、このプロパティはデフォルト状態の `invalidSelectionPoint()` に戻ります。

アクセス関数:

QPoint selectionQueryPosition() const
void setSelectionQueryPosition(QPoint point)

通知シグナル:

void selectionQueryPositionChanged(QPoint position)

関連項目: Q3DGraphsWidgetItem::selectedElement 。

slicingActive : bool

このプロパティは、2Dスライスビューが現在アクティブであるかどうかを表します。

true の場合、Q3DGraphsWidgetItem::selectionMode には、QtGraphs3D::SelectionFlag::Row またはQtGraphs3D::SelectionFlag::Column のいずれかが有効な選択として設定されている必要があります。

注: すべてのグラフが2Dスライスビューに対応しているわけではありません 。

アクセス関数:

bool isSlicingActive() const
void setSlicingActive(bool isSlicing)

通知信号:

void slicingActiveChanged(bool isSlicingActive)

[read-only] viewport : QRect

このプロパティは、すべての3Dレンダリングの対象となる現在のビューポートの矩形を含む、読み取り専用のプロパティです。

アクセス関数:

QRect viewport() const

通知シグナル:

void viewportChanged(QRect viewport)

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

[explicit] Q3DScene::Q3DScene(QObject *parent = nullptr)

1つのライトと1つのカメラを含む基本的なシーンを構築します。オプションのparent パラメータを指定することができ、その場合はQObject のコンストラクタに渡されます。

[override virtual noexcept] Q3DScene::~Q3DScene()

3Dシーンと、その中に含まれるすべてのオブジェクトを削除します。

QPoint Q3DScene::invalidSelectionPoint() const

無効な選択位置を示すQPoint を返します。

注: プロパティ `invalidSelectionPoint`のゲッター 関数です。

bool Q3DScene::isPointInPrimarySubView(QPoint point)

指定されたpoint がプライマリサブビュー内にあるかどうかを返します。その点がプライマリサブビュー内にある場合は、true を返します。

注: サブビューが重なり合っており、指定されたpoint が両方のサブビュー内に存在する場合 、プライマリサブビューが最前面にある場合にのみ、結果はtrue となります。

bool Q3DScene::isPointInSecondarySubView(QPoint point)

指定されたpoint がセカンダリサブビュー内に存在するかどうかを返します。その点がセカンダリサブビュー内にある場合は、true を返します。

注: サブビューが重なっている場合 、指定されたpoint が両方のサブビュー内に存在する場合でも、結果がtrue となるのは、セカンダリサブビューが上にある場合のみです。

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