Sur cette page

QGenericMatrix Class

template <int N, int M, typename T> class QGenericMatrix

La classe `QGenericMatrix` est une classe modèle qui représente une matrice de transformation de taille N × M, comportant N colonnes et M lignes. En savoir plus...

En-tête : #include <QGenericMatrix>
CMake : find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake : QT += gui

Fonctions publiques

QGenericMatrix()
QGenericMatrix(const T *values)
const T *constData() const
void copyDataTo(T *values) const
T *data()
const T *data() const
void fill(T value)
bool isIdentity() const
void setToIdentity()
QGenericMatrix<M, N, T> transposed() const
bool operator!=(const QGenericMatrix<N, M, T> &other) const
T &operator()(int row, int column)
const T &operator()(int row, int column) const
QGenericMatrix<N, M, T> &operator*=(T factor)
QGenericMatrix<N, M, T> &operator+=(const QGenericMatrix<N, M, T> &other)
QGenericMatrix<N, M, T> &operator-=(const QGenericMatrix<N, M, T> &other)
QGenericMatrix<N, M, T> &operator/=(T divisor)
bool operator==(const QGenericMatrix<N, M, T> &other) const
QMatrix2x2
QMatrix2x3
QMatrix2x4
QMatrix3x2
QMatrix3x3
QMatrix3x4
QMatrix4x2
QMatrix4x3
QGenericMatrix<N, M, T> operator*(T factor, const QGenericMatrix<N, M, T> &matrix)
QGenericMatrix<N, M, T> operator*(const QGenericMatrix<N, M, T> &matrix, T factor)
QGenericMatrix<M1, M2, TT> operator*(const QGenericMatrix<NN, M2, TT> &m1, const QGenericMatrix<M1, NN, TT> &m2)
QGenericMatrix<N, M, T> operator+(const QGenericMatrix<N, M, T> &m1, const QGenericMatrix<N, M, T> &m2)
QGenericMatrix<N, M, T> operator-(const QGenericMatrix<N, M, T> &m1, const QGenericMatrix<N, M, T> &m2)
QGenericMatrix<N, M, T> operator-(const QGenericMatrix<N, M, T> &matrix)
QGenericMatrix<N, M, T> operator/(const QGenericMatrix<N, M, T> &matrix, T divisor)
QDataStream &operator<<(QDataStream &stream, const QGenericMatrix<N, M, T> &matrix)
QDataStream &operator>>(QDataStream &stream, QGenericMatrix<N, M, T> &matrix)

Description détaillée

QGenericMatrix<N, M, T> est une classe de modèles où N correspond au nombre de colonnes, M au nombre de lignes et T au type d'élément visible par les utilisateurs de la classe.

Voir également QMatrix4x4.

Documentation sur les fonctions membres

QGenericMatrix::QGenericMatrix()

Crée une matrice identité de dimensions N x M.

[explicit] QGenericMatrix::QGenericMatrix(const T *values)

Construit une matrice à partir des données fournies : N * M, de type flottant values. Le contenu du tableau values est supposé être classé selon l'ordre « row-major ».

Voir également copyDataTo().

const T *QGenericMatrix::constData() const

Renvoie un pointeur constant vers les données brutes de cette matrice.

Voir également data().

void QGenericMatrix::copyDataTo(T *values) const

Récupère les éléments N * M de cette matrice et les copie dans values selon un ordre « row-major ».

T *QGenericMatrix::data()

Renvoie un pointeur vers les données brutes de cette matrice.

Voir aussi constData().

const T *QGenericMatrix::data() const

Renvoie un pointeur constant vers les données brutes de cette matrice.

Voir aussi constData().

void QGenericMatrix::fill(T value)

Remplit tous les éléments de cette matrice avec value.

bool QGenericMatrix::isIdentity() const

Renvoie « true » si cette matrice est l'identité ; « false » dans le cas contraire.

Voir aussi setToIdentity().

void QGenericMatrix::setToIdentity()

Définit cette matrice comme étant la matrice identité.

Voir également isIdentity().

QGenericMatrix<M, N, T> QGenericMatrix::transposed() const

Renvoie cette matrice transposée par rapport à sa diagonale.

bool QGenericMatrix::operator!=(const QGenericMatrix<N, M, T> &other) const

Renvoie « true » si cette matrice n’est pas identique à « other » ; « false » dans le cas contraire.

T &QGenericMatrix::operator()(int row, int column)

Renvoie une référence à l'élément situé à la position (row, column) dans cette matrice, afin de pouvoir lui attribuer une valeur.

const T &QGenericMatrix::operator()(int row, int column) const

Renvoie une référence constante à l'élément situé à la position (row, column) dans cette matrice.

QGenericMatrix<N, M, T> &QGenericMatrix::operator*=(T factor)

Multiplie tous les éléments de cette matrice par factor.

QGenericMatrix<N, M, T> &QGenericMatrix::operator+=(const QGenericMatrix<N, M, T> &other)

Ajoute le contenu de other à cette matrice.

QGenericMatrix<N, M, T> &QGenericMatrix::operator-=(const QGenericMatrix<N, M, T> &other)

Soustrait le contenu de other de cette matrice.

QGenericMatrix<N, M, T> &QGenericMatrix::operator/=(T divisor)

Divise tous les éléments de cette matrice par divisor.

bool QGenericMatrix::operator==(const QGenericMatrix<N, M, T> &other) const

Renvoie « true » si cette matrice est identique à « other » ; « false » dans le cas contraire.

Éléments non membres associés

QMatrix2x2

Le type `QMatrix2x2` définit une instanciation pratique du modèle ` QGenericMatrix ` pour 2 colonnes, 2 lignes et le type d'élément `float`.

QMatrix2x3

Le type `QMatrix2x3` définit une instanciation pratique du modèle ` QGenericMatrix ` pour 2 colonnes, 3 lignes et le type d'élément `float`.

QMatrix2x4

Le type `QMatrix2x4` définit une instanciation pratique du modèle ` QGenericMatrix ` pour 2 colonnes, 4 lignes et le type `float` comme type d'élément.

QMatrix3x2

Le type `QMatrix3x2` définit une instanciation pratique du modèle ` QGenericMatrix ` pour 3 colonnes, 2 lignes et le type d'élément `float`.

QMatrix3x3

Le type `QMatrix3x3` définit une instanciation pratique du modèle ` QGenericMatrix ` pour 3 colonnes, 3 lignes et le type d'élément `float`.

QMatrix3x4

Le type QMatrix3x4 définit une instanciation pratique du modèle ` QGenericMatrix ` pour 3 colonnes, 4 lignes et le type d'élément `float`.

QMatrix4x2

Le type QMatrix4x2 définit une instanciation pratique du modèle ` QGenericMatrix ` pour 4 colonnes, 2 lignes et le type d'élément `float`.

QMatrix4x3

Le type `QMatrix4x3` définit une instanciation pratique du modèle ` QGenericMatrix ` pour 4 colonnes, 3 lignes et le type d'élément `float`.

template < int N, int M, typename T > QGenericMatrix<N, M, T> operator*(T factor, const QGenericMatrix<N, M, T> &matrix)

Renvoie le résultat de la multiplication de tous les éléments de la liste N x M matrix par factor.

template < int N, int M, typename T > QGenericMatrix<N, M, T> operator*(const QGenericMatrix<N, M, T> &matrix, T factor)

Renvoie le résultat de la multiplication de tous les éléments de ` matrix ` par ` factor`.

template < int NN, int M1, int M2, typename TT > QGenericMatrix<M1, M2, TT> operator*(const QGenericMatrix<NN, M2, TT> &m1, const QGenericMatrix<M1, NN, TT> &m2)

Renvoie le produit de la matrice NN x M2 m1 et de la matrice M1 x NN m2 , ce qui donne une matrice de résultat de taille M1 x M2.

template < int N, int M, typename T > QGenericMatrix<N, M, T> operator+(const QGenericMatrix<N, M, T> &m1, const QGenericMatrix<N, M, T> &m2)

Renvoie la somme des matrices N x M: m1 et m2.

template < int N, int M, typename T > QGenericMatrix<N, M, T> operator-(const QGenericMatrix<N, M, T> &m1, const QGenericMatrix<N, M, T> &m2)

Renvoie la différence entre les matrices « N » et « x M » : m1 et m2.

template < int N, int M, typename T > QGenericMatrix<N, M, T> operator-(const QGenericMatrix<N, M, T> &matrix)

Renvoie la négation de ` matrix`.

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

template < int N, int M, typename T > QGenericMatrix<N, M, T> operator/(const QGenericMatrix<N, M, T> &matrix, T divisor)

Renvoie le résultat de la division de tous les éléments de l'N x M matrix par divisor.

template < int N, int M, typename T > QDataStream &operator<<(QDataStream &stream, const QGenericMatrix<N, M, T> &matrix)

Écrit les données fournies N x M matrix dans le fichier spécifié stream et renvoie une référence au flux.

Voir également Sérialisation des types de données Qt.

template < int N, int M, typename T > QDataStream &operator>>(QDataStream &stream, QGenericMatrix<N, M, T> &matrix)

Lit une matrice de taille N x M à partir du fichier stream vers le fichier matrix, puis renvoie une référence au flux.

Voir également 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.