C

GenericMatrix 结构体

template <int M, int N, typename T> struct Qul::PlatformInterface::GenericMatrix

GenericMatrix 类是一个模板类,代表一个矩阵。 更多信息...

头文件 #include <platforminterface/genericmatrix.h>
Qt Quick Ultralite (平台) 1.7
继承自

Qul::PlatformInterface::Transform

公共类型

枚举初始化 { 未初始化, 零初始化, 单位矩阵 }

公共函数

GenericMatrix(const T *values)
GenericMatrix(Qul::PlatformInterface::GenericMatrix::Initialization initialization)
GenericMatrix()
const T *data() const
T *data()
boolisIdentity() const
voidsetToIdentity()
booloperator!=(const GenericMatrix<M, N, T> &other = M) const
const T &operator()(int row, int column) const
T &operator()(int row, int column)
GenericMatrix<M, N, T> &operator*=(T factor)
GenericMatrix<M, N, T> &operator*=(const GenericMatrix<M, N, T> &other = M)
GenericMatrix<M, N, T> &operator+=(const GenericMatrix<M, N, T> &other = M)
booloperator==(const GenericMatrix<M, N, T> &other = M) const
GenericMatrix<M, N, T2>operator*(T1 factor, const GenericMatrix<M, N, T2> &matrix = M)
GenericMatrix<M, N2, T>operator*(const GenericMatrix<M, N1, T> &m1 = M, const GenericMatrix<N1, N2, T> &m2 = N1)
GenericMatrix<M, N, T>operator+(const GenericMatrix<M, N, T> &m1 = M, const GenericMatrix<M, N, T> &m2 = M)

详细描述

GenericMatrix 类是一个模板类,表示一个矩阵。对于方阵,模板特化提供了少量额外的方法。

GenericMatrix 模板有三个参数

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

T 必须是

  • 可简单复制的。
  • 可默认构造的。
  • 可整型构造的。

示例

using Qul::PlatformInterface::GenericMatrix;

// Specializes a square matrix.
using Matrix5x5 = GenericMatrix<5, 5, float>;
Matrix5x5 m(Matrix5x5::Identity);
m.isIdentity();

// Specializes a rectangular matrix.
using Matrix2x3 = GenericMatrix<2, 3, float>;
Matrix2x3 m2(Matrix2x3::Uninitialized);

成员类型文档

枚举 GenericMatrix::Initialization

此枚举类型用于矩阵初始化策略。

常量描述
Qul::PlatformInterface::GenericMatrix::Uninitialized0构建矩阵而不初始化内容。
Qul::PlatformInterface::GenericMatrix::ZeroInitialized1矩阵内容为零初始化。
Qul::PlatformInterface::GenericMatrix::Identity2矩阵内容设置为单位矩阵。该枚举仅适用于方阵。

成员函数文档

GenericMatrix::GenericMatrix(const T *values)

从给定的 M * N values 构建矩阵。假设 values 数组的元素顺序为行主序。

GenericMatrix::GenericMatrix(Qul::PlatformInterface::GenericMatrix::Initialization initialization)

构建矩阵并根据 initialization 策略设置值。

GenericMatrix::GenericMatrix()

以零初始化的值构建矩阵。

const T *GenericMatrix::data() const

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

T *GenericMatrix::data()

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

bool GenericMatrix::isIdentity() const

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

注意:此方法仅适用于方阵。

另请参阅:setToIdentity

void GenericMatrix::setToIdentity()

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

注意:此方法仅适用于方阵。

另请参阅:isIdentity

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

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

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

返回对此矩阵中位置为 (row, column) 的元素的恒定引用。

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

返回对此矩阵中索引位置()的元素的引用,以便可以将该元素赋值。

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

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

GenericMatrix<M, N, T> &GenericMatrix::operator*=(const GenericMatrix<M, N, T> &other = M)

将此矩阵的所有元素与other矩阵相乘。

注意:此方法仅适用于方阵。

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

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

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

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

相关非成员

template <int M, int N, typename T1, typename T2> GenericMatrix<M, N, T2> operator*(T1 factor, const GenericMatrix<M, N, T2> &matrix = M)

返回所有矩阵元素乘以标量factor的结果。

template <int M, int N1, int N2, typename T> GenericMatrix<M, N2, T> operator*(const GenericMatrix<M, N1, T> &m1 = M, const GenericMatrix<N1, N2, T> &m2 = N1)

返回m1m2中所有元素相乘的结果。

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

返回 m1m2 的和。

在特定 Qt 许可下可用。
了解更多。