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  · 

QRectF

La classe QRectF d�finit un rectangle dans le plan en utilisant une pr�cision d�cimale. Plus d'informations...

#include <QRectF>

Voir la position dans l'arbre des classes.

Description d�taill�e

La classe QRectF d�finit un rectangle dans le plan en utilisant une pr�cision d�cimale.

Un rectangle est normalement d�fini par son coin sup�rieur gauche et sa taille. La taille (hauteur et largeur) d'un QRectF est toujours �quivalente au rectangle math�matique qui sert de base pour son rendu.

Un QRectF peut-�tre construit avec un ensemble d'entiers d�signant l'abscisse, l'ordonn�e, la largeur et la hauteur ou bien avec un QPoint et un QSize. Le code suivant cr�e deux rectangles identiques.

QRectF r1(100, 200, 11, 16);
QRectF r2(QPoint(100, 200), QSize(11, 16));

Il y a �galement un troisi�me constructeur qui cr�e un QRectF � partir d'un QRect et une fonction correspondante, toRect(), qui retourne un QRect bas� sur les valeurs du rectangle. (Notez que les valeurs de ce rectangle sont arrondies � l'entier le plus proche).

La classe QRectF propose une collection de fonctions qui retournent les diff�rentes coordonn�es du rectangle et permettent la manipulation de celles-ci. QRectF propose �galement des fonctions pour d�placer le rectangle par rapport � ces diff�rentes coordonn�es. En outre, il existe une fonction moveTo() qui d�place le rectangle de fa�on � ce que son coin sup�rieur gauche ait les coordonn�es donn�es. D'autre part, la fonction translate() d�place le rectangle suivant le d�calage donn� par rapport � sa position actuelle et la fonction translated() retourne une copie translat�e de ce rectangle.

La fonction size() retourne les dimensions du rectangle dans une QSize. Les dimensions peuvent �galement �tre r�cup�r�es s�par�ment en utilisant les fonctions width() et height(). Pour manipuler les dimensions, utilisez les fonctions setSize(), setWidth() ou setHeight(). D'autre part, la taille peut-�tre modifi�e en utilisant l'une des fonctions permettant de changer les coordonn�es du rectangle, comme par exemple setBottom() ou setRight().

La fonction contains() indique si le point donn� est � l'int�rieur du rectangle ou pas et la fonction intersects() retourne true si le rectangle poss�de une intersection avec un rectangle donn�. La classe QRectF poss�de �galement la fonction intersected() qui retourne le rectangle d'intersection et la fonction united() qui retourne le rectangle qui englobe ce rectangle et celui pass� en argument :

image image
intersected() united()

La fonction isEmpty() retourne true si la hauteur ou la largeur du rectangle est inf�rieure ou �gale � 0. Notez qu'un rectangle vide n'est pas valide : la fonction isValid() retourne true si � la fois la largeur et la hauteur du rectangle sont sup�rieures � 0. D'autre part, un rectangle ‹Null› (isNull() == true) a une largeur et une hauteur nulles.

Notez que du fait de la fa�on dont sont d�finies les classes QRect et QRectF, un QRectF vide est d�fini essentiellement de la m�me mani�re qu'un QRect

Finalement, les objets QRectF peuvent �tre mis sous la forme de flux et compar�s.

Rendu

Quand vous utilisez un peintre avec anti-cr�nelage, le contour d'un QRectF sera dessin� sym�triquement des deux c�t�s du contour du rectangle math�matique. Cependant, quand vous utilisez un peintre avec cr�nelage (par d�faut), le dessin ne s'effectue pas de la m�me mani�re.

Dans ce cas, quand vous utilisez un pinceau d'un pixel de largeur, le contour du QRectF sera dessin� � droite et en dessous du contour du rectangle math�matique.

Quand vous utilisez un pinceau de deux pixels de largeur, le contour sera divis� en son milieu par le rectangle math�matique. Ce sera le cas � chaque fois que la largeur du pinceau aura un nombre pair de pixel. Quand le nombre de pixels du pinceau est impair, en revanche, le pixel suppl�mentaire sera dessin� � droite et en dessous du rectangle math�matique comme dans le cas d'un pinceau d'un pixel.

image image
Repr�sentation logique (rectangle math�matique) Pinceau d'un pixel de large
image image
Pinceau de deux pixels de large Pinceau de trois pixels de large

Coordonn�es

La classe QRectF propose une collection de fonctions qui retournent les diff�rentes coordonn�es du rectangle et permettent la manipulation de celles-ci. QRectF propose �galement des fonctions pour d�placer le rectangle par rapport � ces diff�rentes coordonn�es.

Prenons pour exemple les fonctions bottom(), setBottom() et moveBottom() : bottom() retourne l'ordonn�e de l'ar�te inf�rieure du rectangle, setBottom() d�finit l'ordonn�e de l'ar�te inf�rieure du rectangle � l'ordonn�e y donn�e (ce qui peut changer la hauteur mais jamais l'ar�te sup�rieure du rectangle) et moveBottom() d�place verticalement le rectangle entier, de fa�on � ce que son ar�te inf�rieure ait l'ordonn�e y donn�e et que sa taille reste inchang�e.

image

Il est �galement possible d'ajuster les coordonn�es du rectangle en utilisant la fonction adjust(), ainsi que de r�cup�rer un nouveau rectangle bas� sur les ajustements du rectangle original en utilisant la fonction adjusted(). Si la hauteur ou la largeur est n�gative, utilisez la fonction normalized() pour r�cup�rer un rectangle dont les coins ont �t� �chang�s.

En outre, la classe QRectF propose la fonction getCoords(), qui extrait la position des coins sup�rieur gauche et inf�rieur droit du rectangle et la fonction getRect(), qui extrait la position du coin sup�rieur gauche du rectangle, ainsi que sa largeur et sa hauteur. Utilisez les fonctions setCoords() et setRect() pour manipuler toutes les coordonn�es et dimensions du rectangle en une seule fois.

Voir aussi QRect et QRegion.

Fonctions membres

QRectF::QRectF ()

Construit un rectangle vide.

Voir aussi isNull().

QRectF::QRectF ( const QPointf & topLeft, const QSizef & size )

Construit un rectangle avec le coin topLeft et la taille size donn�s.

Voir aussi setTopLeft() et setSize().

QRectF::QRectF ( const Qpointf & topLeft, const Qpointf & bottomRight )

Construit un rectangle avec les coins topLeft et bottomRight donn�s.

Cette fonction a �t� introduite dans Qt 4.3.

Voir aussi setTopLeft() et setBottomRight().

QRectF::QRectF ( qreal]]|[[qtglobal::qreal|qreal]] x, qreal y, qreal width, qreal height )

Construit un rectangle avec le coin sup�rieur gauche de coordonn�es (x, y), de largeur width et de hauteur height.

Voir aussi setRect().

QRectF::QRectF ( const QRect & rectangle )

Construit un rectangle QRectF � partir du rectangle QRect donn�.

Voir aussi toRect().

void QRectF::adjust ( qreal dx1, qreal dy1, qreal dx2, qreal dy2 )

Ajoute respectivement dx1, dy1, dx2 et dy2 aux coordonn�es existantes du rectangle.

Voir aussi adjusted() et setRect().

QRectF QRectF::adjusted ( qreal dx1, qreal dy1, qreal dx2, qreal dy2 ) const

Retourne un nouveau rectangle avec dx1, dy1, dx2 et dy2 ajout�s respectivement aux coordonn�es existantes du rectangle.

Voir aussi adjust().

qreal QRectF::bottom () const

Retourne l'ordonn�e de l'ar�te inf�rieure.

Voir aussi setBottom(), bottomLeft() et bottomRight().

Qpointf QRectF::bottomLeft () const

Retourne la positon du coin inf�rieur gauche du rectangle.

Voir aussi [[setBottomLeft()]], bottom() et left().

Qpointf QRectF::bottomRight () const

Retourne la position du coin inf�rieur droit du rectangle.

Voir aussi setBottomRight(), bottom() et right().

Qpointf QRectF::center () const

Retourne le centre du rectangle.

Voir aussi moveCenter().

bool QRectF::contains ( const Qpointf & point ) const

Retourne true si le point donn� est � l'int�rieur ou sur une ar�te du rectangle, sinon retourne false.

Voir aussi intersects().

bool QRectF::contains ( qreal x, qreal y ) const

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

Retourne true si le point (x, y) est � l'int�rieur ou sur une ar�te du rectangle, sinon retourne false.

bool QRectF::contains ( const QRectF & rectangle ) const

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

Retourne true si le rectangle donn� est � l'int�rieur du rectangle, sinon retourne false.

void QRectF::getCoords ( qreal * x1, qreal * y1, qreal * x2, qreal * y2 ) const

Extrait la position du coin sup�rieur gauche du rectangle vers *x1 et *y1 et la position du coin inf�rieur droit vers *x2 et*y2.

Voir aussi setCoords() et getRect().

void QRectF::getRect ( qreal * x, qreal * y, qreal * width, qreal * height ) const

Extrait la position du coin sup�rieur gauche du rectangle vers *x et *y et ses dimensions vers *width (la largeur) et *height (la hauteur).

Voir aussi setRect() et getCoords().

qreal QRectF::height () const

Retourne la hauteur du rectangle.

Voir aussi setHeight(), width() et size().

QRectF QRectF::intersected ( const QRectF & rectangle ) const

Retourne l'intersection du rectangle avec le rectangle donn�. Notez que r.intersected(s) est �quivalent � r & s.

image

Cette fonction a �t� introduite dans Qt 4.2.

Voir aussi intersects(), united() et operator&=().

bool QRectF::intersects ( const QRectF & rectangle ) const

Retourne true si le rectangle intersecte le rectangle donn� (c'est-�-dire s'il y a une r�gion non vide qui chevauche les deux rectangles � la fois), sinon retourne false.

Le rectangle correspondant � cette intersection peut-�tre r�cup�r� avec la fonction intersected().

Voir aussi contains().

bool QRectF::isEmpty () const

Retourne true si le rectangle est vide, sinon retourne false.

Un rectangle vide a width() <= 0 ou height() <= 0. Un rectangle vide n'est pas valide (c'est � dire que isEmpty() == !isValid()).

Utilisez la fonction normalized() pour r�cup�rer un rectangle o� les coins sont �chang�s.

Voir aussi isNull(), isValid() et normalized().

bool QRectF::isNull () const

Retourne true si le rectangle est un rectangle Null, sinon retourne false.

Un rectangle Null est un rectangle dont � la fois la hauteur et la largeur sont nulles. Un rectangle Null est �galement vide et, de fait, n'est pas valide.

Voir aussi isEmpty() et isValid().

bool QRectF::isValid () const

Retourne true si le rectangle est valide, sinon retourne false.

Un rectangle valide est tel que width() > 0 et height() > 0. Notez que les op�rations complexes comme les intersections ne sont pas d�finies pour les rectangles non valides. Un rectangle valide n'est pas vide (c'est � dire que isValid() == !isEmpty()).

Voir aussi isNull(), isEmpty() et normalized().

qreal QRectF::left () const

Retourne l'abscisse de l'ar�te gauche du rectangle. �quivalent � x().

Voir aussi setLeft(), topLeft() et bottomLeft().

void QRectF::moveBottom ( qreal y )

D�place le rectangle verticalement de fa�on � ce que l'ar�te inf�rieure du rectangle ait l'ordonn�e y donn�e. La taille du rectangle reste inchang�e.

Voir aussi bottom(), setBottom() et moveTop().

void QRectF::moveBottomLeft ( const Qpointf & position )

D�place le rectangle de fa�on � ce que son coin inf�rieur gauche soit � la position donn�e. La taille du rectangle reste inchang�e.

Voir aussi setBottomLeft(), moveBottom() et moveLeft().

void QRectF::moveBottomRight ( const Qpointf & position )

D�place le rectangle de fa�on � ce que son coin inf�rieur droit soit � la position donn�e. La taille du rectangle reste inchang�e.

Voir aussi setBottomRight(), moveRight() et moveBottom().

void QRectF::moveCenter ( const Qpointf & position )

D�place le rectangle de fa�on � ce que son centre soit � la position donn�e. La taille du rectangle reste inchang�e.

Voir aussi center().

void QRectF::moveLeft ( qreal x )

D�place le rectangle horizontalement de fa�on � ce que l'ar�te gauche du rectangle ait l'abscisse x donn�e. La taille du rectangle reste inchang�e.

Voir aussi left(), setLeft() et moveRight().

void QRectF::moveRight ( qreal x )

D�place le rectangle horizontalement de fa�on � ce que l'ar�te droite du rectangle ait l'abscisse x donn�e. La taille du rectangle reste inchang�e.

Voir aussi right(), setRight() et moveLeft().

void QRectF::moveTo ( qreal x, qreal y )

D�place le rectangle de fa�on � ce que son coin sup�rieur gauche soit � la position (x,y) donn�e. La taille du rectangle reste inchang�e.

Voir aussi translate() et moveTopLeft().

void QRectF::moveTo ( const Qpointf & position )

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

D�place le rectangle de fa�on � ce que son coin sup�rieur gauche soit � la position donn�e.

void QRectF::moveTop ( qreal y )

D�place le rectangle verticalement de fa�on � ce que l'ar�te sup�rieure du rectangle ait l'ordonn�e y donn�e. La taille du rectangle reste inchang�e.

Voir aussi top(), setTop() et moveBottom().

void QRectF::moveTopLeft ( const Qpointf & position )

D�place le rectangle de fa�on � ce que son coin sup�rieur gauche soit � la position donn�e. La taille du rectangle reste inchang�e.

Voir aussi setTopLeft(), moveTop() et moveLeft().

void QRectF::moveTopRight ( const Qpointf & position )

D�place le rectangle de fa�on � ce que son coin sup�rieur droit soit � la position donn�e. La taille du rectangle reste inchang�e.

Voir aussi setTopRight(), moveTop() et moveRight().

QRectF QRectF::normalized () const

Retourne un rectangle normalis�, c'est-�-dire un rectangle qui a une hauteur et une largeur non nulles.

Si width() < 0 la fonction �change les coins droits et gauches, et elle �change les coins sup�rieurs et inf�rieurs si height() < 0.

Voir aussi isValid() et isEmpty().

Retourne l'abscisse de l'ar�te droite du rectangle.

Voir aussi setRight(), topRight() et bottomRight().

void QRectF::setBottom ( qreal y )

D�finit l'ordonn�e de l'ar�te inf�rieure du rectangle � l'ordonn�e y donn�e. Ceci peut changer la hauteur mais jamais l'ar�te sup�rieure du rectangle.

Voir aussi bottom() et moveBottom().

void QRectF::setBottomLeft ( const Qpointf & position )

D�finit la position du coin inf�rieur gauche du rectangle � la position donn�e. Ceci peut changer la taille mais jamais le coin sup�rieur droit du rectangle.

Voir aussi bottomLeft() and moveBottomLeft().

void QRectF::setBottomRight ( const Qpointf & position )

D�finit la position du coin inf�rieur droit du rectangle � la position donn�e. Ceci peut changer la taille mais jamais le coin sup�rieur gauche du rectangle.

Voir aussi bottomRight() et moveBottomRight().

void QRectF::setCoords ( qreal x1, qreal y1, qreal x2, qreal y2 )

D�finit les coordonn�es du coin sup�rieur gauche du rectangle � (x1,y1) et les coordonn�es de son coin inf�rieur droit � (x2,y2).

Voir aussi getCoords() et setRect().

void QRectF::setHeight ( qreal height )

D�finit la hauteur du rectangle � la height donn�e. L'ar�te inf�rieure est d�plac�e mais l'ar�te sup�rieure reste inchang�e.

Voir aussi height() et setSize().

void QRectF::setLeft ( qreal x )

D�finit l'abscisse de l'ar�te gauche du rectangle � l'abscisse x donn�e. Ceci peut changer la taille mais jamais l'ar�te droite du rectangle.

�quivalent � setX().

Voir aussi left() and moveLeft().

void QRectF::setRect ( qreal x, qreal y, qreal width, qreal height )

D�finit les coordonn�es du coin sup�rieur gauche du rectangle � (x, y), sa largeur � la width donn�e et sa hauteur � la height donn�e.

Voir aussi getRect() et setCoords().

void QRectF::setRight ( qreal x )

D�finit l'abscisse de l'ar�te droite du rectangle � l'abscisse x donn�e. Ceci peut changer la largeur mais jamais l'ar�te gauche du rectangle.

Voir aussi right() et moveRight().

void QRectF::setSize ( const QSizef & size )

D�finit la taille du rectangle � la size donn�e. Le coin sup�rieur gauche n'est pas d�plac�.

Voir aussi size(), setWidth() et setHeight().

void QRectF::setTop ( qreal y )

D�finit l'ordonn�e de l'ar�te sup�rieure du rectangle � l'ordonn�e y donn�e. Ceci peut changer la hauteur mais jamais l'ar�te inf�rieure du rectangle.

�quivalent � setY().

Voir aussi top() et moveTop().

void QRectF::setTopLeft ( const QPointF & position )

D�finit le coin sup�rieur gauche du rectangle � la position donn�e. Cela peut changer la taille mais cela ne changera jamais la position du coin inf�rieur droit du rectangle.

Voir aussi topLeft() et moveTopLeft().

void QRectF::setTopRight ( const QPointF & position )

D�finit le coin sup�rieur droit du rectangle � la position donn�e. Cela peut changer la taille mais cela ne changera jamais la position du coin inf�rieur gauche du rectangle.

Voir aussi topRight() et moveTopRight().

void QRectF::setWidth ( qreal width )

D�finit la largeur du rectangle � la width donn�e. L'ar�te de droite est d�plac�e mais l'ar�te de gauche reste inchang�e.

Voir aussi width() et setSize().

void QRectF::setX ( qreal x )

D�finit l'abscisse de l'ar�te gauche du rectangle � l'abscisse x donn�e. Ceci peut changer la taille mais jamais l'ar�te droite du rectangle.

�quivalent � setLeft().

Voir aussi x(), setY() et setTopLeft().

void QRectF::setY ( qreal y )

D�finit l'ordonn�e de l'ar�te sup�rieure du rectangle � l'ordonn�e y donn�e. Ceci peut changer la hauteur mais jamais l'ar�te inf�rieure du rectangle.

�quivalent � setTop().

Voir aussi y(), setX() et setTopLeft().

QSizef QRectF::size () const

Retourne la taille du rectangle.

Voir aussi setSize(), width() et height().

QRect QRectF::toAlignedRect () const

Retourne un QRect bas� sur les valeurs du rectangle, tel qu'il soit le plus petit rectangle possible � coordonn�es enti�res qui contienne enti�rement ce rectangle.

Cette fonction a �t� introduite dans Qt 4.3.

Voir aussi toRect().

QRect QRectF::toRect () const

Retourne un QRect bas� sur les valeurs du rectangle. Notez que les valeurs du rectangle retourn� sont arrondies � l'entier le plus proche.

Voir aussi QRectF() et toAlignedRect().

qreal QRectF::top () const

Retourne l'ordonn�e de l'ar�te sup�rieure du rectangle. �quivalent � y().

Voir aussi setTop(), topLeft() et topRight().

Qpointf QRectF::topLeft () const

Retourne la position du coin sup�rieur gauche du rectangle.

Voir aussi setTopLeft(), top() et left().

Qpointf QRectF::topRight () const

Retourne la position du coin sup�rieur droit du rectangle.

Voir aussi setTopRight(), top() et right().

void QRectF::translate ( qreal dx, qreal dy )

D�place le rectangle de dx selon l'axe x et de dy selon l'axe y, par rapport � sa position actuelle. Des valeurs positives de dx et dy d�placent le rectangle vers la droite et le bas.

Voir aussi moveTopLeft(), moveTo() et translated().

void QRectF::translate ( const Qpointf & offset )

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

D�place le rectangle de offset.x() selon l'axe X et de offset.y() selon l'axe Y, par rapport � sa position actuelle.

QRectF QRectF::translated ( qreal dx, qreal dy ) const

Retourne une copie du rectangle translat�e de dx selon l'axe X et de dy selon l'axe Y, par rapport � sa position actuelle. Des valeurs positives de dx et dy d�placent le rectangle vers la droite et le bas.

Voir aussi translate().

QRectF QRectF::translated ( const Qpointf & offset ) const

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

Retourne une copie du rectangle translat�e de offset.x() selon l'axe X et de offset.y() selon l'axe Y, par rapport � sa position actuelle.

QRectF QRectF::united ( const QRectF & rectangle ) const

Retourne le rectangle englobant le rectangle et le rectangle donn�.

image

Cette fonction a �t� introduite dans Qt 4.2.

Voir aussi intersected().

qreal QRectF::width () const

Retourne la largeur du rectangle.

Voir aussi setWidth(), height() et size().

qreal QRectF::x () const

Retourne l'abscisse de l'ar�te gauche du rectangle. �quivalent � left().

Voir aussi setX(), y() et topLeft().

qreal QRectF::y () const

Retourne l'ordonn�e de l'ar�te sup�rieure du rectangle. �quivalent � top().

Voir aussi setY(), x() et topLeft().

QRectF QRectF::operator& ( const QRectF & rectangle ) const

Retourne l'intersection du rectangle avec le rectangle donn�. Retourne un rectangle vide s'il n'y a pas d'intersection.

Voir aussi operator&=() et intersected().

QRectF & QRectF::operator&= ( const QRectF & rectangle )

Intersecte le rectangle avec le rectangle donn�.

Voir aussi intersected() et operator&().

QRectF QRectF::operator| ( const QRectF & rectangle ) const

Retourne le rectangle englobant ce rectangle et le rectangle donn�.

Voir aussi operator|=() and united().

QRectF & QRectF::operator|= ( const QRectF & rectangle )

R�unit le rectangle et le rectangle donn�.

Voir aussi united() et operator|().

En relation mais non membres de la classe

bool operator!= ( const QRectF & r1, const QRectF & r2 )

Retourne true si les rectangles r1 et r2 sont diff�rents, sinon retourne false.

QDataStream & operator<< ( QDataStream & stream, const QRectF & rectangle )

�crit le rectangle donn� dans le flux stream donn� et retourne une r�f�rence sur le flux.

Voir aussi s�rialisation des types de donn�es Qt.

bool operator== ( const QRectF & r1, const QRectF & r2 )

Retourne true si les rectangles r1 et r2 sont �gaux, sinon retourne false.

QDataStream & operator>> ( QDataStream & stream, QRectF & rectangle )

Lit un rectangle � partir du flux stream donn�, la place dans le rectangle donn� et retourne une r�f�rence sur le flux.

Voir aussi s�rialisation des types de donn�es Qt.

Remerciements

Merci � Abdelhafid Hafidiet Nicolas Carion pour la traduction, � Jonathan Courtois, Thibaut Cuvelier et Maxime Gault pour la 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 © 2025 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 !