QPoint Class
La classe QPoint définit un point dans le plan en utilisant une précision entière. Plus d'informations...
| En-tête : | #include <QPoint> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Core)target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake : | QT += core |
- Liste de tous les membres, y compris les membres hérités
- QPoint fait partie des classes de peinture.
Cette classe est comparable à l 'égalité.
Cette classe est comparable à QPointF.
Remarque : Toutes les fonctions de cette classe sont réentrantes.
Fonctions publiques
| QPoint() | |
| QPoint(int xpos, int ypos) | |
| bool | isNull() const |
| int | manhattanLength() const |
| int & | rx() |
| int & | ry() |
| void | setX(int x) |
| void | setY(int y) |
| CGPoint | toCGPoint() const |
(since 6.4) QPointF | toPointF() const |
| QPoint | transposed() const |
| int | x() const |
| int | y() const |
| QPoint & | operator*=(double factor) |
| QPoint & | operator*=(float factor) |
| QPoint & | operator*=(int factor) |
| QPoint & | operator+=(const QPoint &point) |
| QPoint & | operator-=(const QPoint &point) |
| QPoint & | operator/=(qreal divisor) |
Membres publics statiques
| int | dotProduct(const QPoint &p1, const QPoint &p2) |
Non-membres apparentés
| bool | operator!=(const QPoint &lhs, const QPoint &rhs) |
| QPoint | operator*(const QPoint &point, double factor) |
| QPoint | operator*(const QPoint &point, float factor) |
| QPoint | operator*(const QPoint &point, int factor) |
| QPoint | operator*(double factor, const QPoint &point) |
| QPoint | operator*(float factor, const QPoint &point) |
| QPoint | operator*(int factor, const QPoint &point) |
| QPoint | operator+(const QPoint &point) |
| QPoint | operator+(const QPoint &p1, const QPoint &p2) |
| QPoint | operator-(const QPoint &p1, const QPoint &p2) |
| QPoint | operator-(const QPoint &point) |
| QPoint | operator/(const QPoint &point, qreal divisor) |
| QDataStream & | operator<<(QDataStream &stream, const QPoint &point) |
| bool | operator==(const QPoint &lhs, const QPoint &rhs) |
| QDataStream & | operator>>(QDataStream &stream, QPoint &point) |
Description détaillée
Un point est spécifié par une coordonnée x et une coordonnée y auxquelles on peut accéder à l'aide des fonctions x() et y(). La fonction isNull() renvoie true si x et y sont tous deux fixés à 0. Les coordonnées peuvent être fixées (ou modifiées) à l'aide des fonctions setX() et setY() ou des fonctions rx() et ry() qui renvoient des références aux coordonnées (ce qui permet une manipulation directe).
Étant donné un point p, les déclarations suivantes sont toutes équivalentes :
Un objet QPoint peut également être utilisé comme vecteur : L'addition et la soustraction sont définies comme pour les vecteurs (chaque composante est ajoutée séparément). Un objet QPoint peut également être divisé ou multiplié par un int ou un qreal.
En outre, la classe QPoint fournit la fonction manhattanLength() qui donne une approximation peu coûteuse de la longueur de l'objet QPoint interprété comme un vecteur. Enfin, les objets QPoint peuvent être transmis en continu et comparés.
Voir également QPointF et QPolygon.
Documentation des fonctions membres
[constexpr noexcept] QPoint::QPoint()
Construit un point nul, c'est-à-dire dont les coordonnées sont (0, 0).
Voir aussi isNull().
[constexpr noexcept] QPoint::QPoint(int xpos, int ypos)
Construit un point avec les coordonnées données (xpos, ypos).
Voir également setX() et setY().
[static constexpr] int QPoint::dotProduct(const QPoint &p1, const QPoint &p2)
QPoint p( 3, 7); QPoint q(-1, 4); int dotProduct = QPoint::dotProduct(p, q); // dotProduct becomes 25
Renvoie le produit point de p1 et p2.
[constexpr noexcept] bool QPoint::isNull() const
Renvoie true si les coordonnées x et y sont toutes deux à 0, sinon renvoie false.
[constexpr] int QPoint::manhattanLength() const
Renvoie la somme des valeurs absolues de x() et y(), traditionnellement connue comme la "longueur de Manhattan" du vecteur de l'origine au point. A titre d'exemple :
QPoint oldPosition; void MyWidget::mouseMoveEvent(QMouseEvent *event) { QPoint point = event->pos() - oldPosition; if (point.manhattanLength() > 3){ // the mouse has moved more than 3 pixels since the oldPosition } }
Il s'agit d'une approximation utile et rapide à calculer de la longueur réelle :
double trueLength = std::sqrt(std::pow(x(), 2) + std::pow(y(), 2));
La tradition de la "longueur de Manhattan" vient du fait que ces distances s'appliquent aux voyageurs qui ne peuvent se déplacer que sur une grille rectangulaire, comme les rues de Manhattan.
[constexpr noexcept] int &QPoint::rx()
Renvoie une référence à la coordonnée x de ce point.
L'utilisation d'une référence permet de manipuler directement x. Par exemple :
QPoint p(1, 2); p.rx()--; // p becomes (0, 2)
[constexpr noexcept] int &QPoint::ry()
Renvoie une référence à la coordonnée y de ce point.
L'utilisation d'une référence permet de manipuler directement y. Par exemple :
QPoint p(1, 2); p.ry()++; // p becomes (1, 3)
[constexpr noexcept] void QPoint::setX(int x)
Définit la coordonnée x de ce point à la coordonnée x donnée.
[constexpr noexcept] void QPoint::setY(int y)
Définit la coordonnée y de ce point à la coordonnée y donnée.
[noexcept] CGPoint QPoint::toCGPoint() const
Crée un CGPoint à partir d'un QPoint.
Voir aussi QPointF::fromCGPoint().
[constexpr noexcept, since 6.4] QPointF QPoint::toPointF() const
Renvoie ce point en tant que point avec une précision en virgule flottante.
Cette fonction a été introduite dans Qt 6.4.
Voir aussi QPointF::toPoint().
[constexpr noexcept] QPoint QPoint::transposed() const
Renvoie un point dont les coordonnées x et y ont été échangées :
QPoint{1, 2}.transposed() // {2, 1}
Voir aussi x(), y(), setX() et setY().
[constexpr noexcept] int QPoint::x() const
Renvoie la coordonnée x de ce point.
[constexpr noexcept] int QPoint::y() const
Renvoie la coordonnée y de ce point.
[constexpr] QPoint &QPoint::operator*=(double factor)
Multiplie les coordonnées de ce point par factor, et renvoie une référence à ce point. Par exemple, le résultat est arrondi à l'entier le plus proche :
QPoint p(-1, 4); p *= 2.5; // p becomes (-3, 10)
Notez que le résultat est arrondi à l'entier le plus proche car les points sont considérés comme des entiers. Utilisez QPointF pour une précision en virgule flottante.
Voir aussi operator/=().
[constexpr] QPoint &QPoint::operator*=(float factor)
Multiplie les coordonnées de ce point par factor, et renvoie une référence à ce point.
Le résultat est arrondi à l'entier le plus proche, car les points sont considérés comme des entiers. Utilisez QPointF pour une précision en virgule flottante.
Voir aussi operator/=().
[constexpr] QPoint &QPoint::operator*=(int factor)
Multiplie les coordonnées de ce point par factor, et renvoie une référence à ce point.
Voir aussi operator/=().
[constexpr] QPoint &QPoint::operator+=(const QPoint &point)
Ajoute le site point à ce point et renvoie une référence à ce point. Par exemple :
Voir aussi operator-=().
[constexpr] QPoint &QPoint::operator-=(const QPoint &point)
Soustrait la valeur point de ce point et renvoie une référence à ce point. Par exemple :
Voir aussi operator+=().
[constexpr] QPoint &QPoint::operator/=(qreal divisor)
Divise à la fois x et y par le point donné divisor, et renvoie une référence à ce point. Par exemple, le résultat est arrondi à l'entier le plus proche :
QPoint p(-3, 10); p /= 2.5; // p becomes (-1, 4)
Notez que le résultat est arrondi à l'entier le plus proche car les points sont considérés comme des entiers. Utilisez QPointF pour une précision en virgule flottante.
Voir également operator*=().
Non-membres apparentés
[constexpr noexcept] bool operator!=(const QPoint &lhs, const QPoint &rhs)
Renvoie true si lhs et rhs ne sont pas égaux ; sinon, renvoie false.
[constexpr] QPoint operator*(const QPoint &point, double factor)
Renvoie une copie de l'adresse point multipliée par l'adresse factor.
Le résultat est arrondi à l'entier le plus proche, car les points sont considérés comme des entiers. Utilisez QPointF pour une précision en virgule flottante.
Voir aussi QPoint::operator*=().
[constexpr] QPoint operator*(const QPoint &point, float factor)
Renvoie une copie de l'adresse point multipliée par l'adresse factor.
Le résultat est arrondi à l'entier le plus proche, car les points sont considérés comme des entiers. Utilisez QPointF pour une précision en virgule flottante.
Voir aussi QPoint::operator*=().
[constexpr noexcept] QPoint operator*(const QPoint &point, int factor)
Renvoie une copie de l'adresse point multipliée par l'adresse factor.
Voir aussi QPoint::operator*=().
[constexpr] QPoint operator*(double factor, const QPoint &point)
Renvoie une copie de l'adresse point multipliée par l'adresse factor.
Le résultat est arrondi à l'entier le plus proche, car les points sont considérés comme des entiers. Utilisez QPointF pour une précision en virgule flottante.
Il s'agit d'une fonction surchargée.
Voir aussi QPoint::operator*=().
[constexpr] QPoint operator*(float factor, const QPoint &point)
Renvoie une copie de l'adresse point multipliée par l'adresse factor.
Le résultat est arrondi à l'entier le plus proche, car les points sont considérés comme des entiers. Utilisez QPointF pour une précision en virgule flottante.
Il s'agit d'une fonction surchargée.
Voir aussi QPoint::operator*=().
[constexpr noexcept] QPoint operator*(int factor, const QPoint &point)
Renvoie une copie de la valeur point multipliée par la valeur factor.
Il s'agit d'une fonction surchargée.
Voir aussi QPoint::operator*=().
[constexpr noexcept] QPoint operator+(const QPoint &point)
Retourne point non modifié.
[constexpr noexcept] QPoint operator+(const QPoint &p1, const QPoint &p2)
Renvoie un objet QPoint qui est la somme des points donnés, p1 et p2; chaque composante est ajoutée séparément.
Voir aussi QPoint::operator+=().
[constexpr noexcept] QPoint operator-(const QPoint &p1, const QPoint &p2)
Renvoie un objet QPoint formé en soustrayant p2 de p1; chaque composant est soustrait séparément.
Voir aussi QPoint::operator-=().
[constexpr noexcept] QPoint operator-(const QPoint &point)
Renvoie un objet QPoint formé en changeant le signe des deux composantes de l'objet point.
Équivalent à QPoint(0,0) - point.
Il s'agit d'une fonction surchargée.
[constexpr] QPoint operator/(const QPoint &point, qreal divisor)
Renvoie l'adresse QPoint obtenue en divisant les deux composantes de l'adresse point donnée par l'adresse divisor donnée.
Notez que le résultat est arrondi à l'entier le plus proche car les points sont considérés comme des entiers. Utilisez QPointF pour une précision en virgule flottante.
Voir aussi QPoint::operator/=().
QDataStream &operator<<(QDataStream &stream, const QPoint &point)
Écrit la donnée point dans la donnée stream et renvoie une référence au flux.
Voir aussi Serializing Qt Data Types (Sérialisation des types de données Qt).
[constexpr noexcept] bool operator==(const QPoint &lhs, const QPoint &rhs)
Renvoie true si lhs et rhs sont égaux ; sinon, renvoie false.
QDataStream &operator>>(QDataStream &stream, QPoint &point)
Lit un point de l'adresse stream dans l'adresse point et renvoie une référence au flux.
Voir aussi Serializing Qt Data Types (Sérialisation des types de données Qt).
© 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.