QRhiScissor Class

Specifies a scissor rectangle. 更多...

头: #include <QRhiScissor>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
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 )

详细描述

Used with QRhiCommandBuffer::setScissor (). Setting a scissor rectangle is only possible with a QRhiGraphicsPipeline that has QRhiGraphicsPipeline::UsesScissor set.

QRhi assumes OpenGL-style scissor coordinates, meaning x and y are bottom-left. Negative width or height are not allowed. However, apart from that, the flexible OpenGL semantics apply: negative x and y, partially out of bounds rectangles, etc. will be handled gracefully, clamping as appropriate. Therefore, any rendering logic targeting OpenGL can feed scissor rectangles into QRhiScissor as-is, without any adaptation.

注意: This is a RHI API with limited compatibility guarantees, see QRhi 了解细节。

另请参阅 QRhiCommandBuffer::setScissor () 和 QRhiViewport .

成员函数文档编制

[constexpr noexcept] QRhiScissor:: QRhiScissor ()

Constructs an empty scissor.

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

Constructs a scissor with the rectangle specified by x , y , w ,和 h .

注意: x and y are assumed to be the bottom-left position. Negative w or h are not allowed, such scissor rectangles will be ignored by QRhiCommandBuffer . Other than that, the flexible OpenGL semantics apply: negative x and y, partially out of bounds rectangles, etc. will be handled gracefully, clamping as appropriate.

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

Returns the scissor position and size.

另请参阅 setScissor ().

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

Sets the scissor position and size to x , y , w , h .

注意: The position is always expected to be specified in a coordinate system that has its origin in the bottom-left corner, like OpenGL.

另请参阅 scissor ().

相关非成员

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

返回哈希值为 v ,使用 seed 做计算种子。

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

返回 false if the values in the two QRhiScissor 对象 a and b 相等;否则返回 true .

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

返回 true if the values in the two QRhiScissor 对象 a and b 相等。