Files
tp/include/SSystem/SComponent/c_m3d_g_lin.h
T

33 lines
875 B
C++
Raw Normal View History

2021-03-28 22:49:05 +02:00
#ifndef C_M3D_G_LIN_H
#define C_M3D_G_LIN_H
2021-03-31 00:50:18 +02:00
#include "SSystem/SComponent/c_xyz.h"
2021-05-03 02:03:24 +02:00
#include "dolphin/mtx/vec.h"
2021-06-13 00:20:45 +02:00
#include "global.h"
2021-03-31 00:50:18 +02:00
// Line
class cM3dGLin {
// private:
public:
2021-06-13 00:20:45 +02:00
/* 0x00 */ cXyz mStart;
/* 0x0C */ cXyz mEnd;
/* 0x18 vtable */
2021-03-31 00:50:18 +02:00
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; }
2021-06-13 00:20:45 +02:00
}; // Size = 0x1C
STATIC_ASSERT(0x1C == sizeof(cM3dGLin));
2021-03-28 22:49:05 +02:00
#endif /* C_M3D_G_LIN_H */