prime/include/Kyoto/Math/CAABox.hpp

73 lines
2.1 KiB
C++
Raw Normal View History

2022-07-26 04:36:32 +00:00
#ifndef __CAABOX_HPP__
#define __CAABOX_HPP__
#include "Kyoto/Math/CVector3f.hpp"
class CAABox {
2022-08-13 01:26:00 +00:00
public:
2022-09-21 05:18:07 +00:00
// CAABox() {
// // TODO
// }
2022-09-18 06:05:46 +00:00
CAABox(const CVector3f& min, const CVector3f& max); // : min(min), max(max) {}
2022-09-21 05:18:07 +00:00
// CAABox(const CAABox& other)
// : minX(other.minX)
// , minY(other.minY)
// , minZ(other.minZ)
// , maxX(other.maxX)
// , maxY(other.maxY)
// , maxZ(other.maxZ) {}
CAABox& operator=(const CAABox&);
2022-08-16 02:14:28 +00:00
CVector3f ClosestPointAlongVector(const CVector3f& vec) const;
2022-09-29 05:30:20 +00:00
// FurthestPointAlongVector__6CAABoxCFRC9CVector3f global
const CVector3f& GetMinPoint() const { return min; }
const CVector3f& GetMaxPoint() const { return max; }
// GetCenterPoint__6CAABoxCFv global
// GetPoint__6CAABoxCFi global
// Include__6CAABoxFRC9CVector3f weak
// Include__6CAABoxFRC6CAABox weak
// AccumulateBounds__6CAABoxFRC9CVector3f global
// bool Invalid__6CAABoxCFv global
// PointInside__6CAABoxCFRC9CVector3f global
// InsidePlane__6CAABoxCFRC6CPlane global
// DoBoundsOverlap__6CAABoxCFRC6CAABox global
// GetVolume__6CAABoxCFv global
// GetBooleanIntersection__6CAABoxCFRC6CAABox global
// Inside__6CAABoxCFRC6CAABox global
// ClampToBox__6CAABoxCFRC9CVector3f global
// GetTri__6CAABoxCFQ26CAABox10EBoxFaceIdi global
// DistanceBetween__6CAABoxFRC6CAABoxRC6CAABox global
// GetPointA__6CAABoxCFv weak
// GetPointB__6CAABoxCFv weak
// GetPointC__6CAABoxCFv weak
// GetPointD__6CAABoxCFv weak
// GetPointE__6CAABoxCFv weak
// GetPointF__6CAABoxCFv weak
// GetPointG__6CAABoxCFv weak
// GetPointH__6CAABoxCFv weak
// GetWidth__6CAABoxCFv weak
// GetDepth__6CAABoxCFv weak
// GetHeight__6CAABoxCFv weak
// GetTri__6CAABoxCFii weak
// GetEdge__6CAABoxCFi weak
// GetTransformedAABox__6CAABoxCFRC12CTransform4f
2022-08-13 01:26:00 +00:00
2022-09-21 05:18:07 +00:00
static const CAABox& Identity() { return mskNullBox; }
static const CAABox& MakeMaxInvertedBox() { return mskInvertedBox; }
2022-09-29 05:30:20 +00:00
// MakeNullBox__6CAABoxFv ??
2022-08-13 01:26:00 +00:00
private:
2022-09-29 05:30:20 +00:00
CVector3f min;
CVector3f max;
2022-09-21 05:18:07 +00:00
static CAABox mskInvertedBox;
static CAABox mskNullBox;
2022-07-26 04:36:32 +00:00
};
2022-08-13 01:26:00 +00:00
CHECK_SIZEOF(CAABox, 0x18)
2022-07-26 04:36:32 +00:00
#endif // __CAABOX_HPP__