diff options
Diffstat (limited to 'extern/bullet2/src/LinearMath/btTransform.h')
-rw-r--r-- | extern/bullet2/src/LinearMath/btTransform.h | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/extern/bullet2/src/LinearMath/btTransform.h b/extern/bullet2/src/LinearMath/btTransform.h index 3f9a48407c7..b1f3dfca492 100644 --- a/extern/bullet2/src/LinearMath/btTransform.h +++ b/extern/bullet2/src/LinearMath/btTransform.h @@ -17,8 +17,8 @@ subject to the following restrictions: #ifndef btTransform_H #define btTransform_H -#include "LinearMath/btVector3.h" -#include "LinearMath/btMatrix3x3.h" +#include "btVector3.h" +#include "btMatrix3x3.h" ///btTransform supports rigid transforms (only translation and rotation, no scaling/shear) @@ -48,17 +48,19 @@ public: m_origin = t1(t2.m_origin); } - void multInverseLeft(const btTransform& t1, const btTransform& t2) { +/* void multInverseLeft(const btTransform& t1, const btTransform& t2) { btVector3 v = t2.m_origin - t1.m_origin; m_basis = btMultTransposeLeft(t1.m_basis, t2.m_basis); m_origin = v * t1.m_basis; } + */ + SIMD_FORCE_INLINE btVector3 operator()(const btVector3& x) const { - return btVector3(m_basis[0].dot(x) + m_origin[0], - m_basis[1].dot(x) + m_origin[1], - m_basis[2].dot(x) + m_origin[2]); + return btVector3(m_basis[0].dot(x) + m_origin.x(), + m_basis[1].dot(x) + m_origin.y(), + m_basis[2].dot(x) + m_origin.z()); } SIMD_FORCE_INLINE btVector3 operator*(const btVector3& x) const @@ -88,18 +90,16 @@ public: void setFromOpenGLMatrix(const btScalar *m) { m_basis.setFromOpenGLSubMatrix(m); - m_origin[0] = m[12]; - m_origin[1] = m[13]; - m_origin[2] = m[14]; + m_origin.setValue(m[12],m[13],m[14]); } void getOpenGLMatrix(btScalar *m) const { m_basis.getOpenGLSubMatrix(m); - m[12] = m_origin[0]; - m[13] = m_origin[1]; - m[14] = m_origin[2]; - m[15] = btScalar(1.0f); + m[12] = m_origin.x(); + m[13] = m_origin.y(); + m[14] = m_origin.z(); + m[15] = btScalar(1.0); } SIMD_FORCE_INLINE void setOrigin(const btVector3& origin) |