Sur cette page

QRhiScissor Class

Spécifie un rectangle de ciseaux. Plus d'informations...

En-tête : #include <rhi/qrhi.h>
CMake : find_package(Qt6 REQUIRED COMPONENTS GuiPrivate)
target_link_libraries(mytarget PRIVATE Qt6::GuiPrivate)
qmake : QT += gui-private
Depuis : Qt 6.6

Fonctions publiques

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)

Description détaillée

Utilisé avec QRhiCommandBuffer::setScissor(). La définition d'un rectangle de ciseaux n'est possible qu'avec un site QRhiGraphicsPipeline dont l'adresse QRhiGraphicsPipeline::UsesScissor est définie.

QRhi prend des coordonnées de ciseaux de style OpenGL, ce qui signifie que x et y sont en bas à gauche. Une largeur ou une hauteur négative n'est pas autorisée. Cependant, à part cela, la sémantique flexible d'OpenGL s'applique : les x et y négatifs, les rectangles partiellement hors limites, etc. seront gérés de manière gracieuse, avec un clampage si nécessaire. Par conséquent, toute logique de rendu ciblant OpenGL peut alimenter QRhiScissor en rectangles de ciseaux tels quels, sans aucune adaptation.

Note : Il s'agit d'une API RHI avec des garanties de compatibilité limitées, voir QRhi pour plus de détails.

Voir également QRhiCommandBuffer::setScissor() et QRhiViewport.

Documentation des fonctions membres

[constexpr noexcept] QRhiScissor::QRhiScissor()

Construit un ciseau vide.

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

Construit un ciseau avec le rectangle spécifié par x, y, w, et h.

Note : x et y sont supposés être la position en bas à gauche. Les valeurs négatives de w ou h ne sont pas autorisées, de tels rectangles de ciseaux seront ignorés par QRhiCommandBuffer. Pour le reste, la sémantique flexible d'OpenGL s'applique : les x et y négatifs, les rectangles partiellement hors limites, etc. seront traités de manière élégante, avec un clampage approprié.

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

Renvoie la position et la taille du ciseau.

Voir également setScissor().

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

Définit la position et la taille des ciseaux à x, y, w, h.

Note : La position doit toujours être spécifiée dans un système de coordonnées dont l'origine se trouve dans le coin inférieur gauche, comme OpenGL.

Voir également scissor().

Non-membres apparentés

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

Renvoie la valeur de hachage pour key, en utilisant seed comme base de calcul.

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

Renvoie false si les valeurs des deux objets QRhiScissor a et b sont égales ; sinon, renvoie true.

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

Renvoie true si les valeurs des deux objets QRhiScissor a et b sont égales.

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