Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

Vous n'avez pas encore de compte Developpez.com ? L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Developpez.com

Qt

Choisissez la catégorie, puis la rubrique :

Viadeo Twitter Facebook Share on Google+   
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Toutes les fonctions  ·  Vues d'ensemble  · 

QPolygon

La 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éritage

Hérite de QVector<QPoint>.

Hérité par Q3PointArray.

Description détaillée

La 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 membres

QPolygon::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 () const

Retourne 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 ) const

Retourne 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 ) const

Retourne 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 ) const

Extrait 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 ) const

Il 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 ) const

Retourne 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 ) const

Retourne 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 ) const

Il 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 ) const

Retourne 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 () const

Retourne le polygone comme un QVariant.

En relation mais non membres de la classe

QDataStream & 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.

Remerciements

Merci à Abdelhafid Hafidi pour la traduction, à Jonathan Courtois pour la traduction et la relecture, à Thibaut Cuvelier pour la relecture !

Warning: include(): https:// wrapper is disabled in the server configuration by allow_url_include=0 in /home/developpez/www/developpez-com/upload/qt/doc/bs.php on line 4 Warning: include(https://qt.developpez.com/index/rightColumn): failed to open stream: no suitable wrapper could be found in /home/developpez/www/developpez-com/upload/qt/doc/bs.php on line 4 Warning: include(): Failed opening 'https://qt.developpez.com/index/rightColumn' for inclusion (include_path='.:/usr/php53/lib/php') in /home/developpez/www/developpez-com/upload/qt/doc/bs.php on line 4
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 © 2020 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, 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 !
Responsable bénévole de la rubrique Qt : Thibaut Cuvelier -

Partenaire : Hébergement Web