作者:dibaoejx | 来源:互联网 | 2023-09-05 11:45
单位矩阵:任何矩阵与它相乘都等于自己voidCMatrix4_4::Identity(){memset(this,0,sizeof(CMatrix4_4));全部都设置为0主对
//单位矩阵:任何矩阵与它相乘都等于自己
void CMatrix4_4::Identity()
{memset(this,0,sizeof(CMatrix4_4) );//全部都设置为0//主对角线的元素都为1this->matrix[0]=1.0f;this->matrix[5]=1.0f;this->matrix[10]=1.0f;this->matrix[15]=1.0f;
}
矩阵内积(每个元素与对应的矩阵元素相乘):
矩阵乘法,原理:第一个矩阵第m行与第二个矩阵第n列一一乘积,对应位置n等于每个值的乘积之和。
矩阵乘以系数
矩阵加法
矩阵转置就是把矩阵的行变成列。比如把第一行变成第一列,第二行变成第二列。
或者使用我下面那种方法,先顺时针旋转90度,然后做一个水平镜面映射即可
typedef struct D3DXMATRIX {FLOAT _ij;//这里的i表示行,j表示列
} D3DXMATRIX, *LPD3DXMATRIX;D3DXMATRIX matViewMy;
matViewMy._11=xaxis.x;//_1 表示第一行,后面1表示第一列的意思
matViewMy._22=yaxis.y;//_2 表示第二行,后面的2表示第二列的意思/*
矩阵的应用
第一行向量表示X轴
第二行向量表示Y轴
第三行向量表示Z轴
第四行有许多用途(一般表示原点,或者0,0,0,1)
*/
//基向量乘以任意矩阵,提取对应的数据