"L. Spiro Engine"
|
00001 00018 #ifndef __LSP_OBB_H__ 00019 #define __LSP_OBB_H__ 00020 00021 #include "../LSPPhysicsLib.h" 00022 #include "Matrix/LSMMatrix4x4.h" 00023 #include "Vector/LSMVector3.h" 00024 00025 namespace lsp { 00026 00035 class CObb { 00036 // All is public. This class has no secrets. 00037 public : 00038 // == Functions. 00039 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00040 // DISTANCE TESTS 00041 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00042 // == Points. 00049 CVector3 LSE_CALL ClosestPointToPoint( const CVector3 &_vPoint ) const; 00050 00058 LSREAL LSE_CALL GetSqDistFromPoint( const CVector3 &_vPoint ) const; 00059 00066 CObb LSE_CALL Transform( const CMatrix4x4 &_mTransform ) const; 00067 00068 00069 // == Members. 00073 CVector3 m_vCenter; 00074 00078 CVector3 m_vAxes[3]; 00079 00083 CVector3 m_vExtents; 00084 00085 }; 00086 00087 } // namespace lsp 00088 00089 #endif // __LSP_OBB_H__