diff options
author | Sergeanur <s.anureev@yandex.ua> | 2019-10-27 00:46:48 +0200 |
---|---|---|
committer | Sergeanur <s.anureev@yandex.ua> | 2019-10-27 00:46:48 +0200 |
commit | fcfdaa9534c67bc0affee73af80b12ffc82dfd05 (patch) | |
tree | 1009d915cbc9d166177cc218afc116761cc55ae1 /src/math | |
parent | Revert m_alphaEntityList capacity (diff) | |
download | re3-fcfdaa9534c67bc0affee73af80b12ffc82dfd05.tar re3-fcfdaa9534c67bc0affee73af80b12ffc82dfd05.tar.gz re3-fcfdaa9534c67bc0affee73af80b12ffc82dfd05.tar.bz2 re3-fcfdaa9534c67bc0affee73af80b12ffc82dfd05.tar.lz re3-fcfdaa9534c67bc0affee73af80b12ffc82dfd05.tar.xz re3-fcfdaa9534c67bc0affee73af80b12ffc82dfd05.tar.zst re3-fcfdaa9534c67bc0affee73af80b12ffc82dfd05.zip |
Diffstat (limited to 'src/math')
-rw-r--r-- | src/math/Matrix.h | 10 | ||||
-rw-r--r-- | src/math/math.cpp | 10 |
2 files changed, 9 insertions, 11 deletions
diff --git a/src/math/Matrix.h b/src/math/Matrix.h index 96f56a0f..da38cb1d 100644 --- a/src/math/Matrix.h +++ b/src/math/Matrix.h @@ -249,7 +249,15 @@ public: CMatrix &Invert(const CMatrix &src, CMatrix &dst); CVector operator*(const CMatrix &mat, const CVector &vec); CMatrix operator*(const CMatrix &m1, const CMatrix &m2); -CVector MultiplyInverse(const CMatrix &mat, const CVector &vec); +inline CVector MultiplyInverse(const CMatrix &mat, const CVector &vec) +{ + CVector v(vec.x - mat.m_matrix.pos.x, vec.y - mat.m_matrix.pos.y, vec.z - mat.m_matrix.pos.z); + return CVector( + mat.m_matrix.right.x * v.x + mat.m_matrix.right.y * v.y + mat.m_matrix.right.z * v.z, + mat.m_matrix.up.x * v.x + mat.m_matrix.up.y * v.y + mat.m_matrix.up.z * v.z, + mat.m_matrix.at.x * v.x + mat.m_matrix.at.y * v.y + mat.m_matrix.at.z * v.z); +} + const CVector Multiply3x3(const CMatrix &mat, const CVector &vec); const CVector Multiply3x3(const CVector &vec, const CMatrix &mat); diff --git a/src/math/math.cpp b/src/math/math.cpp index 6201cee6..4f74fac9 100644 --- a/src/math/math.cpp +++ b/src/math/math.cpp @@ -126,16 +126,6 @@ operator*(const CMatrix &m1, const CMatrix &m2) return out; } -CVector -MultiplyInverse(const CMatrix &mat, const CVector &vec) -{ - CVector v(vec.x - mat.m_matrix.pos.x, vec.y - mat.m_matrix.pos.y, vec.z - mat.m_matrix.pos.z); - return CVector( - mat.m_matrix.right.x * v.x + mat.m_matrix.right.y * v.y + mat.m_matrix.right.z * v.z, - mat.m_matrix.up.x * v.x + mat.m_matrix.up.y * v.y + mat.m_matrix.up.z * v.z, - mat.m_matrix.at.x * v.x + mat.m_matrix.at.y * v.y + mat.m_matrix.at.z * v.z); -} - const CVector Multiply3x3(const CMatrix &mat, const CVector &vec) { |