QVector2D Class
La classe QVector2D représente un vecteur ou un sommet dans l'espace 2D. Plus d'informations...
| En-tête : | #include <QVector2D> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Gui)target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake : | QT += gui |
- Liste de tous les membres, y compris les membres hérités
- QVector2D fait partie de Classes de peinture et Rendu en 3D.
Fonctions publiques
| QVector2D() | |
| QVector2D(QPoint point) | |
| QVector2D(QPointF point) | |
| QVector2D(QVector3D vector) | |
| QVector2D(QVector4D vector) | |
| QVector2D(float xpos, float ypos) | |
| float | distanceToLine(QVector2D point, QVector2D direction) const |
| float | distanceToPoint(QVector2D point) const |
| bool | isNull() const |
| float | length() const |
| float | lengthSquared() const |
| void | normalize() |
| QVector2D | normalized() const |
| void | setX(float x) |
| void | setY(float y) |
| QPoint | toPoint() const |
| QPointF | toPointF() const |
| QVector3D | toVector3D() const |
| QVector4D | toVector4D() const |
| float | x() const |
| float | y() const |
| operator QVariant() const | |
| QVector2D & | operator*=(QVector2D vector) |
| QVector2D & | operator*=(float factor) |
| QVector2D & | operator+=(QVector2D vector) |
| QVector2D & | operator-=(QVector2D vector) |
| QVector2D & | operator/=(QVector2D vector) |
| QVector2D & | operator/=(float divisor) |
| float & | operator[](int i) |
| float | operator[](int i) const |
Membres publics statiques
| float | dotProduct(QVector2D v1, QVector2D v2) |
Non-membres apparentés
| bool | qFuzzyCompare(QVector2D v1, QVector2D v2) |
| bool | operator!=(QVector2D v1, QVector2D v2) |
| QVector2D | operator*(QVector2D v1, QVector2D v2) |
| QVector2D | operator*(QVector2D vector, float factor) |
| QVector2D | operator*(float factor, QVector2D vector) |
| QVector2D | operator+(QVector2D v1, QVector2D v2) |
| QVector2D | operator-(QVector2D v1, QVector2D v2) |
| QVector2D | operator-(QVector2D vector) |
| QVector2D | operator/(QVector2D vector, QVector2D divisor) |
| QVector2D | operator/(QVector2D vector, float divisor) |
| QDataStream & | operator<<(QDataStream &stream, QVector2D vector) |
| bool | operator==(QVector2D v1, QVector2D v2) |
| QDataStream & | operator>>(QDataStream &stream, QVector2D &vector) |
Description détaillée
Les vecteurs sont l'un des principaux éléments constitutifs de la représentation et du dessin en 2D. Ils se composent de deux coordonnées finies en virgule flottante, traditionnellement appelées x et y.
La classe QVector2D peut également être utilisée pour représenter les sommets dans l'espace 2D. Il n'est donc pas nécessaire de fournir une classe de vertex distincte.
Voir également QVector3D, QVector4D, et QQuaternion.
Documentation des fonctions membres
[constexpr noexcept] QVector2D::QVector2D()
Construit un vecteur nul, c'est-à-dire dont les coordonnées sont (0, 0).
[explicit constexpr noexcept] QVector2D::QVector2D(QPoint point)
Construit un vecteur avec des coordonnées x et y à partir d'un fichier 2D point.
[explicit constexpr noexcept] QVector2D::QVector2D(QPointF point)
Construit un vecteur avec des coordonnées x et y à partir d'un fichier 2D point.
[explicit constexpr noexcept] QVector2D::QVector2D(QVector3D vector)
Construit un vecteur avec des coordonnées x et y à partir d'un 3D vector. La coordonnée z de vector est supprimée.
Voir aussi toVector3D().
[explicit constexpr noexcept] QVector2D::QVector2D(QVector4D vector)
Construit un vecteur avec des coordonnées x et y à partir d'une 3D vector. Les coordonnées z et w de vector sont supprimées.
Voir aussi toVector4D().
[constexpr noexcept] QVector2D::QVector2D(float xpos, float ypos)
Construit un vecteur dont les coordonnées sont (xpos, ypos). Les deux coordonnées doivent être finies.
[noexcept] float QVector2D::distanceToLine(QVector2D point, QVector2D direction) const
Renvoie la distance entre ce sommet et une ligne définie par point et le vecteur unitaire direction.
Si direction est un vecteur nul, il ne définit pas de ligne. Dans ce cas, la distance entre point et ce sommet est renvoyée.
Voir également distanceToPoint().
[noexcept] float QVector2D::distanceToPoint(QVector2D point) const
Renvoie la distance entre ce sommet et un point défini par le sommet point.
Voir également distanceToLine().
[static constexpr noexcept] float QVector2D::dotProduct(QVector2D v1, QVector2D v2)
Renvoie le produit point de v1 et v2.
[constexpr noexcept] bool QVector2D::isNull() const
Renvoie true si les coordonnées x et y sont fixées à 0,0, sinon renvoie false.
[noexcept] float QVector2D::length() const
Renvoie la longueur du vecteur à partir de l'origine.
Voir aussi lengthSquared() et normalized().
[constexpr noexcept] float QVector2D::lengthSquared() const
Renvoie le carré de la longueur du vecteur à partir de l'origine. Ceci est équivalent au produit du point du vecteur avec lui-même.
Voir aussi length() et dotProduct().
[noexcept] void QVector2D::normalize()
Normalise le vecteur courant en place. Rien ne se passe si ce vecteur est un vecteur nul ou si la longueur du vecteur est très proche de 1.
Voir aussi length() et normalized().
[noexcept] QVector2D QVector2D::normalized() const
Renvoie la forme vectorielle unitaire normalisée de ce vecteur.
Si ce vecteur est nul, un vecteur nul est renvoyé. Si la longueur du vecteur est très proche de 1, le vecteur sera retourné tel quel. Sinon, la forme normalisée du vecteur de longueur 1 sera renvoyée.
Voir aussi length() et normalize().
[constexpr noexcept] void QVector2D::setX(float x)
Fixe la coordonnée x de ce point à la coordonnée finie x donnée.
[constexpr noexcept] void QVector2D::setY(float y)
Fixe la coordonnée y de ce point à la coordonnée finie y donnée.
[constexpr noexcept] QPoint QVector2D::toPoint() const
Renvoie la forme QPoint de ce vecteur 2D. Chaque coordonnée est arrondie à l'entier le plus proche.
Voir aussi toPointF() et toVector3D().
[constexpr noexcept] QPointF QVector2D::toPointF() const
Renvoie la forme QPointF de ce vecteur 2D.
Voir aussi toPoint() et toVector3D().
[constexpr noexcept] QVector3D QVector2D::toVector3D() const
Renvoie la forme 3D de ce vecteur 2D, la coordonnée z étant fixée à zéro.
Voir aussi toVector4D() et toPoint().
[constexpr noexcept] QVector4D QVector2D::toVector4D() const
Renvoie la forme 4D de ce vecteur 2D, les coordonnées z et w étant mises à zéro.
Voir aussi toVector3D() et toPoint().
[constexpr noexcept] float QVector2D::x() const
Renvoie la coordonnée x de ce point.
[constexpr noexcept] float QVector2D::y() const
Renvoie la coordonnée y de ce point.
QVector2D::operator QVariant() const
Renvoie le vecteur 2D sous forme de QVariant.
[constexpr noexcept] QVector2D &QVector2D::operator*=(QVector2D vector)
Multiplie chaque composante de ce vecteur par la composante correspondante de vector et renvoie une référence à ce vecteur.
Remarque : il ne s'agit pas d'un produit croisé de ce vecteur avec vector(la somme de ses composantes est égale au produit de points de ce vecteur et de vector).
Voir aussi operator/=() et operator*().
[constexpr noexcept] QVector2D &QVector2D::operator*=(float factor)
Multiplie les coordonnées de ce vecteur par la valeur finie donnée factor et renvoie une référence à ce vecteur.
Voir aussi operator/=() et operator*().
[constexpr noexcept] QVector2D &QVector2D::operator+=(QVector2D vector)
Ajoute l'adresse vector à ce vecteur et renvoie une référence à ce vecteur.
Voir aussi operator-=().
[constexpr noexcept] QVector2D &QVector2D::operator-=(QVector2D vector)
Soustrait la valeur vector de ce vecteur et renvoie une référence à ce vecteur.
Voir aussi operator+=().
[constexpr] QVector2D &QVector2D::operator/=(QVector2D vector)
Divise chaque composante de ce vecteur par la composante correspondante de vector et renvoie une référence à ce vecteur.
Le vecteur vector ne doit pas avoir de composante nulle ou NaN.
Voir aussi operator*=() et operator/().
[constexpr] QVector2D &QVector2D::operator/=(float divisor)
Divise les coordonnées de ce vecteur par divisor et renvoie une référence à ce vecteur. L'adresse divisor ne doit pas être zéro ou NaN.
Voir aussi operator*=().
[constexpr] float &QVector2D::operator[](int i)
Renvoie la composante du vecteur à la position d'index i sous forme de référence modifiable.
i doit être une position d'index valide dans le vecteur (c'est-à-dire 0 <= i < 2).
[constexpr] float QVector2D::operator[](int i) const
Renvoie la composante du vecteur à la position d'index i.
i doit être une position d'index valide dans le vecteur (c'est-à-dire 0 <= i < 2).
Non-membres apparentés
[noexcept] bool qFuzzyCompare(QVector2D v1, QVector2D v2)
Renvoie true si v1 et v2 sont égaux, en tenant compte d'un petit facteur de flou pour les comparaisons en virgule flottante ; faux dans le cas contraire.
[constexpr noexcept] bool operator!=(QVector2D v1, QVector2D v2)
Renvoie true si v1 n'est pas égal à v2; sinon, renvoie false. Cet opérateur utilise une comparaison exacte en virgule flottante.
[constexpr noexcept] QVector2D operator*(QVector2D v1, QVector2D v2)
Renvoie l'objet QVector2D formé en multipliant chaque composant de v1 par le composant correspondant de v2.
Remarque : il ne s'agit en aucun cas d'un produit croisé entre v1 et v2. (La somme de ses composantes correspond au produit en points de v1 et v2).
Voir aussi QVector2D::operator*=().
[constexpr noexcept] QVector2D operator*(QVector2D vector, float factor)
Renvoie une copie de l'adresse vector donnée, multipliée par l'adresse finie factor donnée.
Voir aussi QVector2D::operator*=().
[constexpr noexcept] QVector2D operator*(float factor, QVector2D vector)
Renvoie une copie de l'adresse vector donnée, multipliée par l'adresse finie factor donnée.
Voir aussi QVector2D::operator*=().
[constexpr noexcept] QVector2D operator+(QVector2D v1, QVector2D v2)
Renvoie un objet QVector2D qui est la somme des vecteurs donnés, v1 et v2; chaque composante est ajoutée séparément.
Voir aussi QVector2D::operator+=().
[constexpr noexcept] QVector2D operator-(QVector2D v1, QVector2D v2)
Renvoie un objet QVector2D formé en soustrayant v2 de v1; chaque composant est soustrait séparément.
Voir aussi QVector2D::operator-=().
[constexpr noexcept] QVector2D operator-(QVector2D vector)
Renvoie un objet QVector2D formé en changeant le signe de chaque composante de l'objet vector.
Équivalent à QVector2D(0,0) - vector.
Il s'agit d'une fonction surchargée.
[constexpr] QVector2D operator/(QVector2D vector, QVector2D divisor)
Renvoie l'objet QVector2D formé par la division de chaque composante de l'objet vector par la composante correspondante de l'objet divisor.
L'objet divisor ne doit pas avoir de composante nulle ou NaN.
Voir aussi QVector2D::operator/=().
[constexpr] QVector2D operator/(QVector2D vector, float divisor)
Renvoie l'objet QVector2D formé par la division de chaque composante de l'objet vector par l'objet divisor.
L'adresse divisor ne doit pas être zéro ou NaN.
Voir aussi QVector2D::operator/=().
QDataStream &operator<<(QDataStream &stream, QVector2D vector)
Écrit la donnée vector 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==(QVector2D v1, QVector2D v2)
Renvoie true si v1 est égal à v2; sinon, renvoie false. Cet opérateur utilise une comparaison exacte en virgule flottante.
QDataStream &operator>>(QDataStream &stream, QVector2D &vector)
Lit un vecteur 2D à partir de l'adresse stream dans l'adresse vector 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.