1.正交矩阵 一个矩阵为正交矩阵,就不需要求逆矩阵,直接使用正交矩阵作为逆矩阵进行变换运算。施密特正交化。
2.3X3矩阵扩展为4X4齐次矩阵 最后一行表示矩阵的平移 线性变换+平移
class Vector3;
class Matrix4X3 {
public:
float m11, m12, m13;
float m21, m22, m23;
float m31, m32, m33;
float tx, ty, tz;
void SetRotate(int x, float theta);
void SetScale(const Vector3 &v);
void SetProject(const Vector3 &v);
void SetReflect(int x, float k);
void SetReflect( Vector3 &v);
void SetShear(int x,float s,float t);
void ZeroTranslation();
void SetTranslation(const Vector3 &v);
void SetupTranslation(const Vector3 &v);
};
Matrix4X3 operator*(const Matrix4X3 &m1, const Matrix4X3 &m2);
Vector3 operator*(const Vector3 &v, const Matrix4X3 &m);
float Determinant(const Matrix4X3 &m);
Matrix4X3 Inverse(const Matrix4X3 &m);
Vector3 GetTranslation(const Matrix4X3 &m);
#include "pch.h"
#include "Matrix4X3.h"
#include "Vector3.h"
#include