矩陣堆棧的作用?
矩陣堆棧只是保存變化的狀態(tài)。
GLMatrixStack::GLMatrixStack(int isStackDepth = 64);
初始化矩陣堆棧,深度64,初始化的時候會默認(rèn)在棧頂初始化一個單元矩陣。
void GLMatrixStack::LoadIdentity(void);
在棧頂加載一個單元矩陣
void GLMatrixStack::LoadMatrix(const M3DMatrix44f m);
在棧頂加載一個矩陣
void GLMatrixStack::MultMatrix(const M3DMatrix44f);
矩陣乘以棧頂?shù)木仃?,相乘結(jié)果存儲到堆棧的頂部。
{A,B,C} * D -> {A,B,C*D}
const M3DMatrix44f & GLMatrixStack::GetMatrix(void);
void GLMatrixStack::GetMatrix(M3DMatrix44f mMatrix);
獲取棧頂?shù)木仃?/p>
void GLMatrixStack::PushMatrix(void);
copy一份當(dāng)前矩陣堆棧的棧頂矩陣并放到棧頂。
{A,B,C} -> {A,B,C,C}
void PushMatrix(const M3DMatrix44f mMatrix);
將mMatrix矩陣壓入當(dāng)前矩陣堆棧。
{A,B,C} -> {A,B,C,D}
void PushMatrix(GLFame &frame);
將GLFame轉(zhuǎn)成矩陣并壓入當(dāng)前矩陣堆棧。
void GLMatrixStack::PopMatrix(void);
出棧。