Auf dieser Seite

QSGRenderNode::RenderState Struct

struct QSGRenderNode::RenderState

Enthält Informationen zur Projektionsmatrix und zum Clipping. Mehr...

Öffentliche Funktionen

virtual const QRegion *clipRegion() const = 0
virtual void *get(const char *state) const
virtual const QMatrix4x4 *projectionMatrix() const = 0
virtual bool scissorEnabled() const = 0
virtual QRect scissorRect() const = 0
virtual bool stencilEnabled() const = 0
virtual int stencilValue() const = 0

Ausführliche Beschreibung

Der Render-Status enthält Informationen für den Renderer beim Aufruf von Befehlen an die Scenegraph-Backends.

Siehe auch „ QSGRenderNode::render()“.

Dokumentation der Mitgliedsfunktionen

[pure virtual] const QRegion *RenderState::clipRegion() const

Gibt den aktuellen Ausschnittbereich zurück oder „null“ für Backends, bei denen das Clipping über Stencil oder Scissoring implementiert ist.

Das Backend „ software “ verwendet weder Projektion noch „Scissoring“ oder „Stencil“, was bedeutet, dass der Großteil des Render-Zustands nicht genutzt wird. Der Clip-Bereich, der auf dem „ QPainter “ festgelegt werden kann, muss jedoch weiterhin übermittelt werden, da eine manuelle Rekonstruktion in ` render()` nicht sinnvoll ist. Er kann daher über diese Funktion abgefragt werden. Der Bereich liegt in Weltkoordinaten vor und kann mit ` Qt::ReplaceClip` an ` QPainter::setClipRegion()` übergeben werden. Dies muss vor dem Aufruf von ` QPainter::setTransform()` erfolgen, da der Ausschnittbereich bereits auf die in ` QSGRenderNode::matrix()` bereitgestellte Transformation abgebildet ist.

[virtual] void *RenderState::get(const char *state) const

Gibt einen Zeiger auf einen Wert vom Typ „ state “ zurück.

Für zukünftige Verwendung reserviert.

[pure virtual] const QMatrix4x4 *RenderState::projectionMatrix() const

Gibt einen Zeiger auf die aktuelle Projektionsmatrix zurück.

Die Modell-Ansicht-Matrix kann mit ` QSGRenderNode::matrix()` abgerufen werden. In der Regel ist ` projection * modelview ` die Matrix, die anschließend im Vertex-Shader zur Transformation der Scheitelpunkte verwendet wird.

[pure virtual] bool RenderState::scissorEnabled() const

Gibt den aktuellen Status des „Scissoring“ zurück.

Hinweis: Giltnur für Grafik-APIs, die über einen eigenen Ein-/Aus-Zustand für das „Scissoring“ verfügen.

[pure virtual] QRect RenderState::scissorRect() const

Gibt das aktuelle Ausschnittrechteck zurück, wenn das Clipping aktiv ist. x und y sind die Koordinaten der unteren linken Ecke.

[pure virtual] bool RenderState::stencilEnabled() const

Gibt den aktuellen Status des Stencil-Tests zurück.

Hinweis: Bei Grafik-APIs, bei denen der Stencil-Test in Pipeline-Zustandsobjekten anstelle einzelner Befehle zur Zustandsfestlegung aktiviert wird, liegt es an der Implementierung von ` render()` ( ), den Stencil-Test mit den Operationen ` KEEP`, der Vergleichsfunktion ` EQUAL` und einer Lese- und Schreibmaske von ` 0xFF` zu aktivieren.

[pure virtual] int RenderState::stencilValue() const

Gibt den aktuellen Stencil-Referenzwert zurück, wenn das Clipping aktiv ist.

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