このページでは

QRhiScissor Class

はさみ形の矩形を指定します。詳細...

ヘッダー: #include <rhi/qrhi.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS GuiPrivate)
target_link_libraries(mytarget PRIVATE Qt6::GuiPrivate)
qmake: QT += gui-private
以下のように: 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 &key, 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 default] QRhiScissor::QRhiScissor()

空のハサミを生成します。

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

x 、y 、w 、およびh で指定された矩形を用いて、シザーを構築します。

注: x およびy は左下隅の位置であるとみなされます。負のw またはh は許可されず、そのようなハサミの矩形は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 &key, size_t seed = 0)

`key` のハッシュ値を、計算のシードとして `seed ` を使用して返します。

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

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

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

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

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