QRhiViewport 类

指定一个视口矩形。 更多...

头文件 #include <QRhiViewport>
CMakefind_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmakeQT += gui
Qt 6.6

公共函数

QRhiViewport()
QRhiViewport(float x, float y, float w, float h, float minDepth = 0.0f, float maxDepth = 1.0f)
floatmaxDepth() const
floatminDepth() const
voidsetMaxDepth(float maxDepth)
voidsetMinDepth(float minDepth)
voidsetViewport(float x, float y, float w, float h)
std::array<float, 4>viewport() const
size_tqHash(const QRhiViewport &v, size_t seed = 0)
booloperator!=(const QRhiViewport &a, const QRhiViewport &b)
booloperator==(const QRhiViewport &a, const QRhiViewport &b)

详细描述

QRhiCommandBuffer::setViewport().

QRhi 假定 OpenGL 风格的视口坐标,意味着 x 和 y 是左下角。不允许负宽度或高度。

典型用法如下

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);
// ...

注意:这是一个 RHI API,具有有限的兼容性保证,请参阅 QRhi 以获取详细信息。

另见:QRhiCommandBuffer::setViewport(),QRhi::clipSpaceCorrMatrix(),和 QRhiScissor

成员函数文档

[constexpr noexcept] QRhiViewport::QRhiViewport()

使用空矩形和深度范围为 0.0f - 1.0f 构造视口描述。

另见:QRhi::clipSpaceCorrMatrix().

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

使用指定由 xywh 和深度范围 minDepthmaxDepth 的矩形构造视图描述。

注意:xy 假定是左下角位置。如果不为 wh 赋予正值,则会由 QRhiCommandBuffer::setViewport() 忽略视图。

另见:QRhi::clipSpaceCorrMatrix().

float QRhiViewport::maxDepth() const

返回视图深度范围的 maxDepth 值。

另请参阅:setMaxDepth

float QRhiViewport::minDepth() const

返回视图深度范围的 minDepth 值。

另请参阅:setMinDepth

void QRhiViewport::setMaxDepth(float maxDepth)

设置视图深度范围的 maxDepth。默认设置为 1.0f。

另请参阅:maxDepth

void QRhiViewport::setMinDepth(float minDepth)

设置视图深度范围的 minDepth。默认设置为 0.0f。

另请参阅:minDepth

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

设置视图的位置和大小为 xywh

注意:视图在以原点位于左下角的坐标系中指定。

另请参阅:viewport

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

返回视图的 x、y、宽度和高度。

另请参阅:setViewport

相关非成员函数

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

返回 v 的哈希值,使用 seed 来初始化计算。

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

如果两个 QRhiViewport 对象 ab 的值相等,则返回 false;否则返回 true

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

如果两个 QRhiViewport 对象 ab 的值相等,则返回 true

© 2024 The Qt Company Ltd. 本文档中包含的文档贡献是各自拥有者的版权。提供的文档依据自由软件基金会的发布,根据GNU自由文档许可协议第1.3版许可。Qt及其相关标志是The Qt Company Ltd.在芬兰及/或全球其他国家的商标。所有其他商标均属于其各自所有者。