mirror of
				https://github.com/PrimeDecomp/prime.git
				synced 2025-10-27 15:30:22 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			32 lines
		
	
	
		
			790 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			790 B
		
	
	
	
		
			C++
		
	
	
	
	
	
| #ifndef _COBBOX
 | |
| #define _COBBOX
 | |
| 
 | |
| #include "Kyoto/Math/CAABox.hpp"
 | |
| #include "Kyoto/Math/CTransform4f.hpp"
 | |
| #include "Kyoto/Math/CVector3f.hpp"
 | |
| 
 | |
| class CInputStream;
 | |
| class CMRay;
 | |
| class COBBox {
 | |
| public:
 | |
|   COBBox(const CTransform4f& xf, const CVector3f& extents);
 | |
|   COBBox(CInputStream& in);
 | |
| 
 | |
|   CAABox CalculateAABox(const CTransform4f& xf) const;
 | |
| 
 | |
|   static COBBox FromAABox(const CAABox& box, const CTransform4f& xf);
 | |
| 
 | |
|   bool LineIntersectsBox(const CMRay& ray, float& penetration) const;
 | |
|   bool AABoxIntersectsBox(const CAABox& box) const;
 | |
|   bool OBBIntersectsBox(const COBBox& box) const;
 | |
| 
 | |
|   const CTransform4f& GetTransform() const { return mTransform; }
 | |
|   const CVector3f& GetSize() const { return mExtents; }
 | |
| 
 | |
| private:
 | |
|   CTransform4f mTransform;
 | |
|   CVector3f mExtents;
 | |
| };
 | |
| 
 | |
| #endif // _COBBOX
 |