QGenericMatrix 类

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

QGenericMatrix 类是一个模板类,表示一个具有 N 列和 M 行的 NxM 变换矩阵。更多...

头文件 #include <QGenericMatrix>
CMakefind_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmakeQT += gui

公共函数

QGenericMatrix()
QGenericMatrix(const T *values)
const T *constData() const
voidcopyDataTo(T *values) const
T *data()
const T *data() const
voidfill(T value)
boolisIdentity() const
voidsetToIdentity()
QGenericMatrix<M, N, T>transposed() const
booloperator!=(const QGenericMatrix<N, M, T> &other) const
const T &operator()(int row, int column) const
T &operator()(int row, int column)
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)
booloperator==(const QGenericMatrix<N, M, T> &other) const
QMatrix2x2
QMatrix2x3
QMatrix2x4
QMatrix3x2
QMatrix3x3
QMatrix3x4
QMatrix4x2
QMatrix4x3
QGenericMatrix<M1, M2, TT>operator*(const QGenericMatrix<NN, M2, TT> &m1, const QGenericMatrix<M1, NN, TT> &m2)
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<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 &运算符<<(QDataStream &stream, const QGenericMatrix<N, M, T> &matrix)
QDataStream &运算符>>(QDataStream &stream, QGenericMatrix<N, M, T> &matrix)

详细说明

QGenericMatrix模板有三个参数

N列数。
M行数。
T对类的用户可见的元素类型。

另请参阅QMatrix4x4

成员函数文档

QGenericMatrix::QGenericMatrix()

构造一个NxM单位矩阵。

[显式] QGenericMatrix::QGenericMatrix(const T *values)

从给定的N * M浮点数values构造矩阵。假定数组values的内容是按行主序排列的。

另请参阅copyDataTo

const T *QGenericMatrix::constData() const

返回此矩阵原始数据的常量指针。

另请参阅data

void QGenericMatrix::copyDataTo(T *values) const

检索此矩阵中的N * M项,并将它们按行主序复制到values中。

T *QGenericMatrix::data()

返回此矩阵原始数据的指针。

另请参阅constData

const T *QGenericMatrix::data() const

返回此矩阵原始数据的常量指针。

另请参阅constData

void QGenericMatrix::fill(T value)

value填充此矩阵的所有元素。

bool QGenericMatrix::isIdentity() const

如果此矩阵是单位矩阵,则返回true;否则返回false。

另请参阅setToIdentity

void QGenericMatrix::setToIdentity()

将此矩阵设置为单位矩阵。

另请参阅isIdentity

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

返回沿对角线转置的此矩阵。

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

如果此矩阵与other不相同,则返回true;否则返回false。

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

返回对位于此矩阵中位置(row, column)的元素的常量引用。

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

返回此矩阵中位置 (row, column) 的元素引用,以便可以对元素进行赋值。

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

将此矩阵的所有元素乘以 factor

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

other 的内容添加到此矩阵中。

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

从这个矩阵中减去 other 的内容。

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

将此矩阵的所有元素除以 divisor

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

如果此矩阵与 other 完全相同,则返回 true;否则返回 false。

相关非成员

QMatrix2x2

QMatrix2x2 类型定义了 QGenericMatrix 模板的方便实例化,用于 2 列,2 行,元素类型为 float。

QMatrix2x3

QMatrix2x3 类型定义了 QGenericMatrix 模板的方便实例化,用于 2 列,3 行,元素类型为 float。

QMatrix2x4

QMatrix2x4 类型定义了 QGenericMatrix 模板的方便实例化,用于 2 列,4 行,元素类型为 float。

QMatrix3x2

QMatrix3x2 类型定义了 QGenericMatrix 模板的方便实例化,用于 3 列,2 行,元素类型为 float。

QMatrix3x3

QMatrix3x3 类型定义了 QGenericMatrix 模板的方便实例化,用于 3 列,3 行,元素类型为 float。

QMatrix3x4

QMatrix3x4 类型定义了一个用于 3 列、4 行和将以 float 类型作为元素的 QGenericMatrix 模板的便捷实例化。

QMatrix4x2

QMatrix4x2 类型定义了一个用于 4 列、2 行并且以 float 类型作为元素的 QGenericMatrix 模板的便捷实例化。

QMatrix4x3

QMatrix4x3 类型定义了一个用于 4 列、3 行并且以 float 类型作为元素的 QGenericMatrix 模板的便捷实例化。

模板 <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)

返回 NNxM2 矩阵 m1 与 M1xNN 矩阵 m2 的乘积,生成一个 M1xM2 矩阵结果。

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

返回将 matrix 中所有元素乘以 factor 的结果。

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

返回将 matrix 中所有元素乘以 factor 的结果。

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

返回 m1m2 的和。

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

返回 m1m2 的差。

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

这是一个重载函数。

返回 matrix 的相反数。

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

返回将 matrix 的所有元素除以 divisor 的结果。

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

将给定的 matrix 写入给定的 stream 并返回对流的引用。

另请参阅序列化 Qt 数据类型.

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

从给定的 stream 读取一个 NxM 矩阵到给定的 matrix 中,并返回对流的引用。

另请参阅序列化 Qt 数据类型.

© 2024 Qt 公司有限公司。此处包含的文档投稿为各自所有者的版权。此处提供的文档根据免费软件基金会发布的 GNU 自由文档许可协议版本 1.3 的条款进行许可。Qt 及相应的商标是芬兰以及/或其他国家 Qt 公司的商标。所有其他商标均为其各自所有者的财产。