QRhiViewport Class

Gibt ein Ansichtsfenster-Rechteck an. Mehr...

Kopfzeile: #include <rhi/qrhi.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::GuiPrivate)
qmake: QT += gui-private
Since: Qt 6.6

Öffentliche Funktionen

QRhiViewport()
QRhiViewport(float x, float y, float w, float h, float minDepth = 0.0f, float maxDepth = 1.0f)
float maxDepth() const
float minDepth() const
void setMaxDepth(float maxDepth)
void setMinDepth(float minDepth)
void setViewport(float x, float y, float w, float h)
std::array<float, 4> viewport() const
size_t qHash(const QRhiViewport &key, size_t seed = 0)
bool operator!=(const QRhiViewport &a, const QRhiViewport &b)
bool operator==(const QRhiViewport &a, const QRhiViewport &b)

Detaillierte Beschreibung

Wird mit QRhiCommandBuffer::setViewport() verwendet.

QRhi nimmt OpenGL-ähnliche Viewport-Koordinaten an, d.h. x und y sind links unten. Negative Breite oder Höhe sind nicht erlaubt.

Typische Verwendung ist wie die folgende:

const QSize outputSizeInPixels = swapchain->currentPixelSize();
const QRhiViewport viewport(0, 0, outputSizeInPixels.width(), outputSizeInPixels.height());
cb->beginPass(swapchain->currentFrameRenderTarget(), Qt::black, { 1.0f, 0 });
cb->setGraphicsPipeline(ps);
cb->setViewport(viewport);
// ...

Hinweis: Dies ist eine RHI-API mit begrenzten Kompatibilitätsgarantien, siehe QRhi für Details.

Siehe auch QRhiCommandBuffer::setViewport(), QRhi::clipSpaceCorrMatrix(), und QRhiScissor.

Dokumentation der Mitgliedsfunktionen

[constexpr noexcept] QRhiViewport::QRhiViewport()

Konstruiert eine Ansichtsfensterbeschreibung mit einem leeren Rechteck und einem Tiefenbereich von 0.0f - 1.0f.

Siehe auch QRhi::clipSpaceCorrMatrix().

QRhiViewport::QRhiViewport(float x, float y, float w, float h, float minDepth = 0.0f, float maxDepth = 1.0f)

Konstruiert eine Ansichtsfenster-Beschreibung mit dem durch x, y, w, h und dem Tiefenbereich minDepth und maxDepth angegebenen Rechteck.

Hinweis: x und y werden als untere linke Position angenommen. w und h sollten nicht negativ sein, andernfalls wird das Ansichtsfenster von QRhiCommandBuffer::setViewport() ignoriert.

Siehe auch QRhi::clipSpaceCorrMatrix().

float QRhiViewport::maxDepth() const

Gibt den maxDepth-Wert des Tiefenbereichs des Ansichtsfensters zurück.

Siehe auch setMaxDepth().

float QRhiViewport::minDepth() const

Gibt den minDepth-Wert des Tiefenbereichs des Ansichtsfensters zurück.

Siehe auch setMinDepth().

void QRhiViewport::setMaxDepth(float maxDepth)

Legt die maxDepth des Tiefenbereichs des Ansichtsfensters fest. Standardmäßig ist dieser Wert auf 1.0f gesetzt.

Siehe auch maxDepth().

void QRhiViewport::setMinDepth(float minDepth)

Legt die minDepth des Tiefenbereichs des Ansichtsfensters fest. Standardmäßig ist dieser Wert auf 0.0f gesetzt.

Siehe auch minDepth().

void QRhiViewport::setViewport(float x, float y, float w, float h)

Setzt die Position und Größe des Ansichtsfensters auf x, y, w und h.

Hinweis: Ansichtsfenster werden in einem Koordinatensystem angegeben, dessen Ursprung sich unten links befindet.

Siehe auch viewport().

std::array<float, 4> QRhiViewport::viewport() const

Gibt das Ansichtsfenster x, y, Breite und Höhe zurück.

Siehe auch setViewport().

Verwandte Nicht-Mitglieder

[noexcept] size_t qHash(const QRhiViewport &key, size_t seed = 0)

Gibt den Hash-Wert für key zurück, wobei seed als Startwert für die Berechnung verwendet wird.

[noexcept] bool operator!=(const QRhiViewport &a, const QRhiViewport &b)

Gibt false zurück, wenn die Werte in den beiden Objekten QRhiViewport a und b gleich sind; andernfalls wird true zurückgegeben.

[noexcept] bool operator==(const QRhiViewport &a, const QRhiViewport &b)

Gibt true zurück, wenn die Werte in den beiden Objekten QRhiViewport a und b gleich sind.

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