Auf dieser Seite

Qt3DRender::Quick::QScene2D Class

class Qt3DRender::Quick::QScene2D

Diese Klasse ermöglicht das Rendern von QML in eine Textur, die anschließend als Teil einer 3D-Szene verwendet werden kann. Mehr...

Header: #include <Qt3DQuickScene2D/QScene2D>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3dquickscene2d)
target_link_libraries(mytarget PRIVATE Qt6::3dquickscene2d)
qmake: QT += 3dquickscene2d
In QML: Scene2D
Erbt von: Qt3DCore::QNode
Status: Veraltet

Diese Klasse ist veraltet. Wir raten dringend davon ab, sie in neuem Code zu verwenden.

Öffentliche Typen

enum RenderPolicy { Continuous, SingleShot }

Eigenschaften

Öffentliche Funktionen

QScene2D(Qt3DCore::QNode *parent = nullptr)
void addEntity(Qt3DCore::QEntity *entity)
QList<Qt3DCore::QEntity *> entities() const
bool isMouseEnabled() const
QQuickItem *item() const
Qt3DRender::QRenderTargetOutput *output() const
void removeEntity(Qt3DCore::QEntity *entity)
Qt3DRender::Quick::QScene2D::RenderPolicy renderPolicy() const

Öffentliche Slots

void setItem(QQuickItem *item)
void setMouseEnabled(bool enabled)
void setOutput(Qt3DRender::QRenderTargetOutput *output)
void setRenderPolicy(Qt3DRender::Quick::QScene2D::RenderPolicy policy)

Signale

void itemChanged(QQuickItem *item)
void mouseEnabledChanged(bool enabled)
void outputChanged(Qt3DRender::QRenderTargetOutput *output)
void renderPolicyChanged(Qt3DRender::Quick::QScene2D::RenderPolicy policy)

Detaillierte Beschreibung

Diese Klasse verwendet „ QQuickRenderControl “, um die angegebene „ QQuickItem “ in eine Offscreen-Oberfläche zu rendern, die mit einer vom Benutzer bereitgestellten Textur verknüpft ist. Dadurch kann die Komponente direkt in die Textur rendern, ohne dass ein zwischengeschalteter Kopiervorgang erforderlich ist, und der Benutzer kann frei festlegen, wie die Textur in der 3D-Szene verwendet wird.

Die Entitäten, die die `QScene2D` verwenden, können der Klasse zugeordnet werden, um eine Interaktion mit dem Element zu ermöglichen; verfügt eine Entität über eine ` QObjectPicker `-Komponente, werden die Auswahlereignisse dieses Pickers an die `QScene2D` gesendet, in Mausereignisse umgewandelt und schließlich an das Element weitergeleitet.

Hinweis: Es werdennur Mausereignisse unterstützt. Das Element unterstützt keine Tastatureingaben.

Dokumentation zu den Member-Typen

enum QScene2D::RenderPolicy

Dieser Enum-Typ beschreibt die verfügbaren Arten von Render-Richtlinien.

KonstanteWertBeschreibung
Qt3DRender::Quick::QScene2D::Continuous0Die Scene2D wird kontinuierlich gerendert. Dies ist die Standard-Renderrichtlinie.
Qt3DRender::Quick::QScene2D::SingleShot1Die Scene2D wird nur einmal in die Textur gerendert; danach werden die für das Rendern zugewiesenen Ressourcen freigegeben.

Dokumentation zur Eigenschaft

item : QQuickItem*

Enthält die „ QQuickItem “, die von „ QScene2D “ in die Textur gerendert wird.

Zugriffsfunktionen:

QQuickItem *item() const
void setItem(QQuickItem *item)

Notifier-Signal:

void itemChanged(QQuickItem *item)

mouseEnabled : bool

Gibt an, ob Mausereignisse für das gerenderte Element aktiviert sind. Die Mausereignisse werden aus den Objekt-Auswahlereignissen der Entitäten generiert, die dem „ QScene2D “ hinzugefügt wurden. Die Maus ist standardmäßig aktiviert.

Hinweis: Die Ereignisse werden um einen Frame verzögert, da die Objektauswahl im Backend erfolgt.

Zugriffsfunktionen:

bool isMouseEnabled() const
void setMouseEnabled(bool enabled)

Notifier-Signal:

void mouseEnabledChanged(bool enabled)

output : Qt3DRender::QRenderTargetOutput*

Enthält das `QRenderTargetOutput`-Objekt, das angibt, wohin das ` QScene2D ` rendert.

Zugriffsfunktionen:

Qt3DRender::QRenderTargetOutput *output() const
void setOutput(Qt3DRender::QRenderTargetOutput *output)

Notifier-Signal:

void outputChanged(Qt3DRender::QRenderTargetOutput *output)

renderPolicy : RenderPolicy

Enthält die Render-Richtlinie dieser Scene2D.

Zugriffsfunktionen:

Qt3DRender::Quick::QScene2D::RenderPolicy renderPolicy() const
void setRenderPolicy(Qt3DRender::Quick::QScene2D::RenderPolicy policy)

Notifier-Signal:

void renderPolicyChanged(Qt3DRender::Quick::QScene2D::RenderPolicy policy)

Dokumentation der Mitgliedsfunktionen

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

Der Konstruktor erstellt eine neue QScene2D-Instanz mit dem angegebenen „ parent “.

void QScene2D::addEntity(Qt3DCore::QEntity *entity)

Fügt dem Objekt „ QScene2D “ ein „ entity “ hinzu. Wenn die Entitäten über „QObjectPicker“ verfügen, werden die Auswahlereignisse dieser Entität an „ QScene2D “ gesendet und in Mausereignisse umgewandelt.

QList<Qt3DCore::QEntity *> QScene2D::entities() const

Entitäten abrufen, die mit dem „ QScene2D “ verknüpft sind.

void QScene2D::removeEntity(Qt3DCore::QEntity *entity)

Entfernt eine „ entity “ aus dem „ QScene2D “-Objekt.

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