mirror of
https://github.com/halpz/re3.git
synced 2025-07-22 10:39:47 +00:00
Merge with upstream
This commit is contained in:
@ -145,6 +145,30 @@ public:
|
||||
m_matrix.pos.y = 0.0f;
|
||||
m_matrix.pos.z = 0.0f;
|
||||
}
|
||||
void SetRotate(float xAngle, float yAngle, float zAngle) {
|
||||
float cX = cos(xAngle);
|
||||
float sX = sin(xAngle);
|
||||
float cY = cos(yAngle);
|
||||
float sY = sin(yAngle);
|
||||
float cZ = cos(zAngle);
|
||||
float sZ = sin(zAngle);
|
||||
|
||||
m_matrix.right.x = cZ * cY - (sZ * sX) * sY;
|
||||
m_matrix.right.y = (cZ * sX) * sY + sZ * cY;
|
||||
m_matrix.right.z = -cX * sY;
|
||||
|
||||
m_matrix.up.x = -sZ * cX;
|
||||
m_matrix.up.y = cZ * cX;
|
||||
m_matrix.up.z = sX;
|
||||
|
||||
m_matrix.at.x = (sZ * sX) * cY + cZ * sY;
|
||||
m_matrix.at.y = sZ * sY - (cZ * sX) * cY;
|
||||
m_matrix.at.z = cX * cY;
|
||||
|
||||
m_matrix.pos.x = 0.0f;
|
||||
m_matrix.pos.y = 0.0f;
|
||||
m_matrix.pos.z = 0.0f;
|
||||
}
|
||||
void Reorthogonalise(void){
|
||||
CVector &r = *GetRight();
|
||||
CVector &f = *GetForward();
|
||||
|
@ -26,4 +26,20 @@ public:
|
||||
if(v.y < top) top = v.y;
|
||||
if(v.y > bottom) bottom = v.y;
|
||||
}
|
||||
|
||||
void Translate(float x, float y){
|
||||
left += x;
|
||||
right += x;
|
||||
bottom += y;
|
||||
top += y;
|
||||
}
|
||||
void Grow(float r){
|
||||
left -= r;
|
||||
right += r;
|
||||
top -= r;
|
||||
bottom += r;
|
||||
}
|
||||
|
||||
float GetWidth(void) { return right - left; }
|
||||
float GetHeight(void) { return bottom - top; }
|
||||
};
|
||||
|
Reference in New Issue
Block a user