mirror of
https://github.com/PrimeDecomp/prime.git
synced 2025-07-06 21:15:53 +00:00
Retro seemingly avoided using the Dolphin typedefs in most places, opting to use int/uint instead. This likely means they didn't use u8/s8/u16/s16/etc either. Former-commit-id: 133326ae406a0ebc76f56f8bcb489fda280be2be
29 lines
728 B
C++
29 lines
728 B
C++
#ifndef _CPLANE
|
|
#define _CPLANE
|
|
|
|
#include "types.h"
|
|
|
|
#include "Kyoto/Math/CUnitVector3f.hpp"
|
|
#include "Kyoto/Math/CVector3f.hpp"
|
|
|
|
class CPlane {
|
|
public:
|
|
CPlane(const CVector3f&, const CUnitVector3f&); // TODO weak
|
|
CPlane(float, const CUnitVector3f&); // TODO weak
|
|
CPlane(const CVector3f&, const CVector3f&, const CVector3f&);
|
|
// TODO
|
|
|
|
const CUnitVector3f& GetNormal() const { return x0_normal; }
|
|
float GetConstant() const { return xc_constant; }
|
|
// GetHeight__6CPlaneCFRC9CVector3f
|
|
// IsFacing__6CPlaneCFRC9CVector3f
|
|
float ClipLineSegment(const CVector3f& start, const CVector3f& end) const;
|
|
|
|
private:
|
|
CUnitVector3f x0_normal;
|
|
float xc_constant;
|
|
};
|
|
CHECK_SIZEOF(CPlane, 0x10)
|
|
|
|
#endif // _CPLANE
|