Sur cette page

QSGSimpleTextureNode Class

La classe QSGSimpleTextureNode est fournie pour faciliter le dessin de contenu texturé à l'aide du graphe de scène QML. Plus d'informations...

En-tête : #include <QSGSimpleTextureNode>
CMake : find_package(Qt6 REQUIRED COMPONENTS Quick)
target_link_libraries(mytarget PRIVATE Qt6::Quick)
qmake : QT += quick
Héritages : QSGGeometryNode

Types publics

enum TextureCoordinatesTransformFlag { NoTransform, MirrorHorizontally, MirrorVertically }
flags TextureCoordinatesTransformMode

Fonctions publiques

QSGSimpleTextureNode()
virtual ~QSGSimpleTextureNode() override
QSGTexture::Filtering filtering() const
bool ownsTexture() const
QRectF rect() const
void setFiltering(QSGTexture::Filtering filtering)
void setOwnsTexture(bool owns)
void setRect(const QRectF &r)
void setRect(qreal x, qreal y, qreal w, qreal h)
void setSourceRect(const QRectF &r)
void setSourceRect(qreal x, qreal y, qreal w, qreal h)
void setTexture(QSGTexture *texture)
void setTextureCoordinatesTransform(QSGSimpleTextureNode::TextureCoordinatesTransformMode mode)
QRectF sourceRect() const
QSGTexture *texture() const
QSGSimpleTextureNode::TextureCoordinatesTransformMode textureCoordinatesTransform() const

Description détaillée

Attention : La classe de nœuds de texture simple doit avoir une texture avant d'être ajoutée au graphe de scène à rendre.

Attention : Cette classe utilitaire n'est fonctionnelle que lorsqu'elle est exécutée avec les backends par défaut ou logiciels du graphe de scène Qt Quick. Comme alternative, préférez l'utilisation de QSGImageNode via QQuickWindow::createImageNode(). Cependant, cette classe autonome reste utile lorsqu'elle est utilisée par le biais d'une sous-classe et que l'application sait qu'aucun backend spécial de graphe de scène ne sera impliqué.

Documentation des types de membres

enum QSGSimpleTextureNode::TextureCoordinatesTransformFlag
flags QSGSimpleTextureNode::TextureCoordinatesTransformMode

L'enum TextureCoordinatesTransformFlag permet de spécifier le mode utilisé pour générer les coordonnées de texture d'un quadrillage texturé.

ConstanteValeurDescription
QSGSimpleTextureNode::NoTransform0x00Les coordonnées de la texture sont orientées en fonction des coordonnées de la fenêtre, c'est-à-dire que l'origine est située en haut à gauche.
QSGSimpleTextureNode::MirrorHorizontally0x01Les coordonnées de la texture sont inversées sur l'axe horizontal par rapport aux coordonnées de la fenêtre.
QSGSimpleTextureNode::MirrorVertically0x02Les coordonnées de la texture sont inversées sur l'axe vertical par rapport aux coordonnées de la fenêtre.

Le type TextureCoordinatesTransformMode est un typedef pour QFlags<TextureCoordinatesTransformFlag>. Il stocke une combinaison OU de valeurs TextureCoordinatesTransformFlag.

Documentation des fonctions membres

QSGSimpleTextureNode::QSGSimpleTextureNode()

Construit un nouveau nœud de texture simple

[override virtual noexcept] QSGSimpleTextureNode::~QSGSimpleTextureNode()

Détruit le nœud de texture

QSGTexture::Filtering QSGSimpleTextureNode::filtering() const

Renvoie le filtrage actuellement défini sur ce noeud de texture

Voir aussi setFiltering().

bool QSGSimpleTextureNode::ownsTexture() const

Renvoie true si le nœud est propriétaire de la texture ; sinon, renvoie false.

Voir aussi setOwnsTexture().

QRectF QSGSimpleTextureNode::rect() const

Renvoie le rectangle cible de ce nœud de texture.

Voir aussi setRect().

void QSGSimpleTextureNode::setFiltering(QSGTexture::Filtering filtering)

Définit le filtrage à utiliser pour ce nœud de texture à filtering.

Pour une mise à l'échelle douce, utilisez QSGTexture::Linear; pour une mise à l'échelle normale, utilisez QSGTexture::Nearest.

Voir aussi filtering().

void QSGSimpleTextureNode::setOwnsTexture(bool owns)

Définit si le nœud prend possession de la texture à owns.

Par défaut, le nœud ne prend pas possession de la texture.

Voir également ownsTexture() et setTexture().

void QSGSimpleTextureNode::setRect(const QRectF &r)

Définit le rectangle cible de ce nœud de texture à r.

Voir également rect().

void QSGSimpleTextureNode::setRect(qreal x, qreal y, qreal w, qreal h)

Définit le rectangle de ce nœud de texture comme commençant à (x, y) et ayant pour largeur w et pour hauteur h.

Il s'agit d'une fonction surchargée.

void QSGSimpleTextureNode::setSourceRect(const QRectF &r)

Définit le rectangle source de ce nœud de texture à r.

Voir aussi sourceRect().

void QSGSimpleTextureNode::setSourceRect(qreal x, qreal y, qreal w, qreal h)

Définit le rectangle de ce nœud de texture pour montrer sa texture à partir de (x, y) et avoir la largeur w et la hauteur h par rapport à QSGTexture::textureSize.

Il s'agit d'une fonction surchargée.

void QSGSimpleTextureNode::setTexture(QSGTexture *texture)

Définit la texture de ce nœud de texture à texture.

Utilisez setOwnsTexture() pour indiquer si le nœud doit être propriétaire de la texture. Par défaut, le nœud n'est pas propriétaire.

Attention : Un nœud de texture doit avoir une texture avant d'être ajouté au graphe de scène pour être rendu.

Voir aussi texture().

void QSGSimpleTextureNode::setTextureCoordinatesTransform(QSGSimpleTextureNode::TextureCoordinatesTransformMode mode)

Définit la méthode utilisée pour générer les coordonnées de la texture à mode. Cela peut être utilisé pour obtenir une orientation correcte de la texture. Cela est souvent nécessaire lorsqu'on utilise une bibliothèque OpenGL tierce pour effectuer le rendu de la texture, car OpenGL a un axe des ordonnées inversé par rapport à Qt Quick.

Voir également textureCoordinatesTransform().

QRectF QSGSimpleTextureNode::sourceRect() const

Renvoie le rectangle source de ce nœud de texture.

Voir aussi setSourceRect().

QSGTexture *QSGSimpleTextureNode::texture() const

Renvoie la texture de ce nœud de texture

Voir aussi setTexture().

QSGSimpleTextureNode::TextureCoordinatesTransformMode QSGSimpleTextureNode::textureCoordinatesTransform() const

Renvoie le mode utilisé pour générer les coordonnées de texture pour ce nœud.

Voir aussi setTextureCoordinatesTransform().

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