QPolygonLa classe QPolygon fournit un vecteur de points utilisant une précision entière. Plus d'informations... #include <QPolygon> Voir la position dans l'arbre des classes. HéritageHérité par Q3PointArray. Description détailléeLa classe QPolygon fournit un vecteur de points utilisant une précision entière. Un objet QPolygon est un QVector<QPoint>. La façon la plus simple pour ajouter des points à un QPolygon est d'utiliser l'opérateur de flux de QVector, comme illustré ci-dessous : QPolygon polygone; polygone << QPoint(10, 20) << QPoint(20, 30); En plus des fonctions fournies par QVector, QPolygon fournit certaines fonctions spécifiques aux points. Chaque point dans un polygone peut être récupéré en passant son index à la fonction point(). Pour remplir le polygone, QPolygon fournit la fonction setPoint() pour définir un point à un index donné, la fonction setPoints() pour définir tous les points du polygone (en le redimensionnant au nombre de points donnés) et la fonction putPoints() qui copie un certain nombre de points donnés dans le polygone à partir d'un index spécifié (en redimensionnant le polygone si nécessaire). QPolygon fournit les fonctions boundingRect() et translate() comme fonctions géométriques. Utilisez la fonction QMatrix::map() pour des transformations plus générales d'objets QPolygon. La classe QPolygon est implicitement partagée. Voir aussi QVector, QPolygonF et QLine. Fonctions membresQPolygon::QPolygon ()Construit un polygone sans points. Voir aussi QVector::isEmpty(). QPolygon::QPolygon ( int size )Construit un polygone avec la taille size donnée. Crée un polygone vide si size == 0. Voir aussi QVector::isEmpty(). QPolygon::QPolygon ( const QPolygon & polygon )Construit une copie du polygone polygon donné. Voir aussi setPoints(). QPolygon::QPolygon ( const QVector<QPoint> & points )Construit un polygone avec les points spécifiés. Voir aussi setPoints(). QPolygon::QPolygon ( const QRect & rectangle, bool closed = false )Construit un polygone à partir du rectangle donné. Si closed est false, le polygone ne contient que les quatre points du rectangle classés dans le sens horaire, sinon le cinquième point du polygone est défini à rectangle.topLeft(). Notez que le coin inférieur droit du rectangle est situé à (rectangle.x() + rectangle.width(), rectangle.y() + rectangle.height()). Voir aussi setPoints(). QPolygon::~QPolygon ()Détruit le polygone. QRect QPolygon::boundingRect () constRetourne le rectangle englobant le polygone, ou QRect(0, 0, 0, 0) si le polygone est vide. Voir aussi QVector::isEmpty(). bool QPolygon::containsPoint ( const QPoint & point, Qt::FillRule fillRule ) constRetourne true si le point donné est à l'intérieur du polygone selon la règle de remplissage FillRule spécifiée ; sinon retourne false. Cette fonction a été introduite dans Qt 4.3. QPolygon QPolygon::intersected ( const QPolygon & r ) constRetourne un polygone qui est l'intersection entre celui-ci et le polygone r. Définir des opérations sur des polygones permettra de traiter les polygones comme des surfaces. Les polygones non fermés seront traités comme implicitement fermés. Cette fonction a été introduite dans Qt 4.3. void QPolygon::point ( int index, int * x, int * y ) constExtrait les coordonnées du point situé à l'index donné à x et y (si les pointeurs sont valides). Voir aussi setPoint(). QPoint QPolygon::point ( int index ) constIl s'agit d'une fonction surchargée. Retourne le point situé à l'index donné. void QPolygon::putPoints ( int index, int nPoints, int firstx, int firsty, ... )Copie nPoints points à partir de la liste variable d'arguments dans ce polygone à partir de l'index donné. Les points sont donnés comme une séquence de nombres entiers, en commençant par firstx puis firsty et ainsi de suite. Le polygone est automatiquement redimensionné si index+nPoints dépasse sa taille actuelle. L'exemple de code crée un polygone à trois points (4,5), (6,7) et (8,9), en élargissant le polygone de 1 à 3 points : QPolygon polygone(1); polygone[0] = QPoint(4, 5); polygone.putPoints(1, 2, 6,7, 8,9); Le code suivant a le même résultat mais, ici, la fonction putPoints() écrase plutôt que d'étendre le polygone : QPolygon polygone(3); polygone.putPoints(0, 3, 4,5, 0,0, 8,9); polygone.putPoints(1, 1, 6,7); Voir aussi setPoints(). void QPolygon::putPoints ( int index, int nPoints, const QPolygon & fromPolygon, int fromIndex = 0 )Il s'agit d'une fonction surchargée. Copie nPoints points à partir de l'index fromIndex (0 par défaut) du polygone fromPolygon dans ce polygone, commençant à l'index spécifié. Par exemple : QPolygon polygone1; polygone1.putPoints(0, 3, 1,2, 0,0, 5,6); // polygone1 est maintenant le polygone de trois points (1,2, 0,0, 5,6) QPolygon polygone2; polygone2.putPoints(0, 3, 4,4, 5,5, 6,6); // polygone2 est maintenant (4,4, 5,5, 6,6) polygone1.putPoints(2, 3, polygone2); // polygone1 est maintenant le polygone de cinq points (1,2, 0,0, 4,4, 5,5, 6,6) void QPolygon::setPoint ( int index, int x, int y )Définit le point situé à l'index donné au point spécifié par (x, y). Voir aussi point(), putPoints() et setPoints(). void QPolygon::setPoint ( int index, const QPoint & point )Il s'agit d'une fonction surchargée. Définit le point situé à l'index donné au point donné. void QPolygon::setPoints ( int nPoints, const int * points )Redimensionne le polygone à nPoints et le remplit avec les points donnés. Cet exemple de code crée un polygone avec deux points (10, 20) et (30, 40) : static const int points[] = { 10, 20, 30, 40 }; QPolygon polygone; polygone.setPoints(2, points); Voir aussi setPoint() et putPoints(). void QPolygon::setPoints ( int nPoints, int firstx, int firsty, ... )Il s'agit d'une fonction surchargée. Redimensionne le polygone à nPoints et le remplit avec les points spécifiés par la liste variable d'arguments. Les points sont donnés comme une séquence de nombres entiers, en commençant par firstx puis firsty et ainsi de suite. Cet exemple de code crée un polygone avec deux points (10, 20) et (30, 40) : QPolygon polygone; polygone.setPoints(2, 10, 20, 30, 40); QPolygon QPolygon::subtracted ( const QPolygon & r ) constRetourne un polygone qui est celui-ci moins le polygone r. Définir des opérations sur des polygones permettra de traiter les polygones comme des surfaces. Les polygones non fermés seront traités comme implicitement fermés. Cette fonction a été introduite dans Qt 4.3. void QPolygon::translate ( int dx, int dy )Translate tous les points du polygone par (dx, dy). Voir aussi translated(). void QPolygon::translate ( const QPoint & offset )Il s'agit d'une fonction surchargée. Translate tous les points du polygone par le décalage offset donné. Voir aussi translated(). QPolygon QPolygon::translated ( int dx, int dy ) constRetourne une copie du polygone qui est translaté par (dx, dy). Cette fonction a été introduite dans Qt 4.6. Voir aussi translate(). QPolygon QPolygon::translated ( const QPoint & offset ) constIl s'agit d'une fonction surchargée. Retourne une copie du polygone qui est translaté par le décalage offset donné. Cette fonction a été introduite dans Qt 4.6. Voir aussi translate(). QPolygon QPolygon::united ( const QPolygon & r ) constRetourne un polygone qui est l'union de celui-ci et du polygone r. Définir des opérations sur des polygones permettra de traiter les polygones comme des surfaces et fermera implicitement le polygone. Cette fonction a été introduite dans Qt 4.3. Voir aussi intersected() et subtracted(). QPolygon::operator QVariant () constRetourne le polygone comme un QVariant. En relation mais non membres de la classeQDataStream & operator<< ( QDataStream & stream, const QPolygon & polygon )Écrit le polygone polygon donné dans le flux stream donné et retourne une référence sur le flux. Cette fonction a été introduite dans Qt 4.4. Voir aussi sérialisation des types de données Qt. QDataStream & operator>> ( QDataStream & stream, QPolygon & polygon )Lit un polygone à partir du flux stream donné, le place dans le polygone polygon donné et retourne une référence sur le flux. Cette fonction a été introduite dans Qt 4.4. Voir aussi sérialisation des types de données Qt. RemerciementsMerci à Abdelhafid Hafidi pour la traduction, à Jonathan Courtois pour la traduction et la relecture, à Thibaut Cuvelier pour la relecture ! |
Publicité
Best OfActualités les plus luesSemaine
Mois
Année
Le Qt Developer Network au hasardCompiler l'add-in Qt de Visual StudioLe Qt Developer Network est un réseau de développeurs Qt anglophone, où ils peuvent partager leur expérience sur le framework. Lire l'article.
CommunautéRessources
Liens utilesContact
Qt dans le magazine |
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 © 2012 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 ! |
Copyright © 2000-2012 - www.developpez.com