IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Viadeo Twitter Facebook Share on Google+   
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Toutes les fonctions  ·  Vues d'ensemble  · 

Système de dessin

Le système de peinture de Qt permet de peindre sur l'écran et les périphériques d'impression en utilisant la même API et est principalement basé sur les classes QPainter, QPaintDevice et QPaintEngine.

QPainter est utilisé pour effectuer des opérations de dessin, QPaintDevice est une abstraction d'un espace à deux dimensions qui peut être peint en utilisant un QPainter et QPaintEngine fournit l'interface que le QPainter utilise pour dessiner sur différents types d'appareils. La classe QPaintEngine est utilisée intérieurement par QPainter et QPaintDevice et est cachée des programmeurs d'applications à moins qu'ils créent leur propre type d'appareil.

image

Le principal avantage de cette approche est que tous les peintres ont la même façon de peindre, ce qui rend facile le support de nouvelles fonctionnalités et permet de fournir des implémentations par défaut pour celles non supportées.

Sujets

Classes pour peindre

Ces classes fournissent un support pour peindre sur un appareil de peinture.

QBitmap Image monochrome (un bit de profondeur)
QBrush Définit le motif de remplissage des formes dessinées par QPainter
QColor Couleurs basées sur les valeurs RGB, HSV ou CMYK
QColormap Permet de passer de QColor, indépendant de l'appareil, à des pixels de valeurs dépendantes de l'appareil
QConicalGradient Utilisé en combinaison avec QBrush pour spécifier un remplissage de dégradé conique
QDirectPainter Permet un accès direct au matériel dans Qt pour les Linux embarqués
QFont Spécifie une police utilisée pour dessiner du texte
QFontMetrics Informations sur les métriques de police
QFontMetricsF Informations sur les métriques de police
QGenericMatrix Classe template qui représente une matrice de transformations de N colonnes et M lignes
QGradient Utilisé en combinaison avec QBrush pour spécifier le remplissage d'un dégradé
QIcon Icônes redimensionnables dans différents modes et états
QIconEngine Classe de base d'abstraction pour l'affichage de QIcon
QIconEngineV2 Classe de base d'abstraction pour l'affichage de QIcon
QImage Représentation d'images indépendantes du matériel qui permet d'accéder directement aux données pixels et peut être utilisée comme appareil de peinture
QImageReader Interface indépendante du format pour lire des images depuis des fichiers et autres appareils
QImageWriter Interface indépendante du format pour écrire des images depuis des fichiers et autres appareils
QLine Vecteur bidimensionnel avec une précision entière
QLineF Vecteur bidimensionnel avec une précision flottante
QLinearGradient Utilisé en combinaison avec QBrush pour spécifier un remplissage de dégradé linéaire
QMargins Définit les quatre marges d'un rectangle
QMovie Classe de commodité pour lire des films avec QImageReader
QPaintDevice La classe de base des objets qui peuvent être peints
QPaintEngine Définition abstraite de la manière dont un QPainter dessine sur un appareil donné sur une plateforme donnée
QPainter Réalise des dessins de bas niveau sur des widgets et autres appareils à peindre
QPainterPath Conteneur pour des opérations de dessin qui permet la construction et la réutilisation de formes graphiques
QPainterPathStroker Utilisé pour générer des bords remplissables pour un QPainterPath
QPalette Contient des groupes de couleurs pour chaque état de widget
QPen Définit comment un QPainter doit dessiner les lignes et les bord des formes
QPicture Appareil à peindre qui enregistre et ré-effectue les commandes d'un QPainter
QPixmap Représentation d'une image hors écran qui peut être utilisée comme appareil de peinture
QPixmapCache Cache d'application pour les images
QPoint Définit un point dans le plan avec une précision entière
QPointF Définit un point dans le plan avec une précision flottante
QPolygon Vecteur de points avec une précision entière
QPolygonF Vecteur de points avec une précision flottante
QRadialGradient Utilisé en combinaison avec QBrush pour spécifier un remplissage de dégradé rond
QRect Définit un rectangle dans le plan avec une précision entière
QRectF Définit un rectangle dans le plan avec une précision flottante
QRegion Spécifie une région pour un peintre
QSize Définit la taille d'un objet à deux dimensions avec une précision entière
QSizeF Définit la taille d'un objet à deux dimensions avec une précision flottante
QStylePainter Classe de commodité pour dessiner des éléments QStyle dans un widget
QSvgGenerator Appareil de peinture qui est utilisé pour créer des dessins SVG
QSvgRenderer Utilisé pour dessiner le contenu de fichiers SVG sur des appareils de peinture
QSvgWidget Widget qui est utilisé pour afficher les contenus de fichiers SVG (Scalable Vector Graphics)
QTransform Spécifie les transformations 2D d'un système de coordonnées
QVector2D Représente un vecteur ou un sommet dans un espace 2D

Alternativement, Qt fournit le module QtOpenGL, qui offre des classes qui facilitent l'utilisation de OpenGL dans les applications. Entre autres, le module propose une classe de widget OpenGL qui peut être utilisée comme n'importe quel autre widget Qt, excepté qu'elle ouvre un tampon d'affichage OpenGL où l'API OpenGl peut être utilisée pour afficher le contenu.

Remerciements

Merci à Adrien Morel et à Paul Musti?re pour la traduction, ainsi qu'à Thibaut Cuvelier et Jacques Thery pour leur relecture !

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt 4.7
Copyright © 2024 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !