Qt3DRender::Quick::QScene2D Class
class Qt3DRender::Quick::QScene2DDiese 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
- item : QQuickItem*
- mouseEnabled : bool
- output : Qt3DRender::QRenderTargetOutput*
- renderPolicy : RenderPolicy
Ö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.
| Konstante | Wert | Beschreibung |
|---|---|---|
Qt3DRender::Quick::QScene2D::Continuous | 0 | Die Scene2D wird kontinuierlich gerendert. Dies ist die Standard-Renderrichtlinie. |
Qt3DRender::Quick::QScene2D::SingleShot | 1 | Die 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.