Files
tp/include/SSystem/SComponent/c_m3d_g_lin.h
T
lepelog 5be309a186 c_cc_d (#132)
* gnd check

* more c_bg_s

* start adding static asserts for size

* Add more size checks

* c_cc

* c_cc progress

* failed implementing cCcD_*Attr

* progress

* format

* try destructor

* data

* remove unused asm

* remove inlineCross

* remove functions that didn't belong there

* naming fix

* match cCcD_SphAttr::CalcAabBox

* cCcD_Stts::ClrTg

* c_cc_s and mass fixes
2021-06-12 18:20:45 -04:00

33 lines
875 B
C++

#ifndef C_M3D_G_LIN_H
#define C_M3D_G_LIN_H
#include "SSystem/SComponent/c_xyz.h"
#include "dolphin/mtx/vec.h"
#include "global.h"
// Line
class cM3dGLin {
// private:
public:
/* 0x00 */ cXyz mStart;
/* 0x0C */ cXyz mEnd;
/* 0x18 vtable */
cM3dGLin() {}
cM3dGLin(const cXyz&, const cXyz&);
virtual ~cM3dGLin() {}
void SetStartEnd(const cXyz&, const cXyz&);
void SetStartEnd(const Vec&, const Vec&);
void CalcPos(Vec*, f32) const;
void CalcVec(Vec* pOut) const { PSVECSubtract(&this->mEnd, &this->mStart, pOut); }
void SetEnd(const cXyz&);
const cXyz& GetStartP(void) const { return mStart; }
cXyz& GetStartP(void) { return mStart; }
const cXyz& GetEndP(void) const { return mEnd; }
cXyz& GetEndP(void) { return mEnd; }
}; // Size = 0x1C
STATIC_ASSERT(0x1C == sizeof(cM3dGLin));
#endif /* C_M3D_G_LIN_H */