QRhiScissor Class

シザー矩形を指定する。詳細...

Header: #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

パブリック関数

QRhiScissor()
QRhiScissor(int x, int y, int w, int h)
std::array<int, 4> scissor() const
void setScissor(int x, int y, int w, int h)
size_t qHash(const QRhiScissor &v, size_t seed = 0)
bool operator!=(const QRhiScissor &a, const QRhiScissor &b)
bool operator==(const QRhiScissor &a, const QRhiScissor &b)

詳細説明

QRhiCommandBuffer::setScissor() と共に使用される。シザー矩形の設定は、QRhiGraphicsPipeline::UsesScissor が設定されたQRhiGraphicsPipeline でのみ可能です。

QRhi はOpenGLスタイルのシザー座標、つまりxとyが左下であることを仮定します。負の幅や高さは許されません。しかし、それを除けば、柔軟なOpenGLのセマンティクスが適用されます:負のxとy、部分的に境界から外れた矩形などは、適切にクランプされ、優雅に処理されます。したがって、OpenGLをターゲットとするレンダリングロジックは、QRhiScissorに矩形をそのまま送り込むことができます。

注意: これは互換性保証に制限のあるRHI APIです。詳細はQRhi を参照してください。

QRhiCommandBuffer::setScissor() およびQRhiViewportも参照して ください。

メンバ関数ドキュメント

[constexpr noexcept] QRhiScissor::QRhiScissor()

空のシザーを構築する。

QRhiScissor::QRhiScissor(int x, int y, int w, int h)

x,y,w,h で指定された矩形を持つシザーを構築する。

注意: xy は左下の位置であると仮定される。wh を負にすることはできません.そのような矩形はQRhiCommandBuffer によって無視されます.それ以外は、柔軟なOpenGLのセマンティクスが適用されます:負のxとy、部分的に境界から外れた矩形などは、適切にクランプされ、優雅に処理されます。

std::array<int, 4> QRhiScissor::scissor() const

はさみの位置とサイズを返します。

setScissor()も参照してください

void QRhiScissor::setScissor(int x, int y, int w, int h)

シザーの位置とサイズをx,y,w,h に設定します。

注意: 位置は常に、OpenGLのように左下隅を原点とする座標系で指定されることが期待されます。

scissor()も参照してください

関連する非メンバー

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

v のハッシュ値を返す。seed を計算の種として使用する。

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

2つのQRhiScissor オブジェクトab の値が等しい場合はfalse を返し、そうでない場合はtrue を返します。

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

つのQRhiScissor オブジェクトab の値が等しい場合、true を返します。

©2024 The Qt Company Ltd. 本文書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。