Files
dusklight/include/SComponent/c_m3d_g_sph.h
T
lepelog 11bf642871 some c_m3d (#97)
* decompiled some bgs_chk funcs

* c_m3d_g

* c_math progress

* remove duplicate SComponent headers

* move some variables and decompile a function

* some inlined from debug

* cM3d_2PlaneLinePosNearPos

* fix fabsf and decompile cM3d_CrawVec

* format

* cleanup

* more cleanup

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-26 17:48:47 -05:00

38 lines
876 B
C++

#ifndef C_M3D_G_SPH_H_
#define C_M3D_G_SPH_H_
#include "SComponent/c_m3d_g_cyl.h"
#include "SComponent/c_xyz.h"
#include "global.h"
struct cM3dGSphS {
Vec mCenter;
f32 mRadius;
};
class cM3dGSph {
private:
public:
cXyz mCenter;
f32 mRadius;
void SetC(const cXyz&);
void Set(const cXyz&, f32);
void Set(const cM3dGSphS&);
void SetR(f32);
bool cross(const cM3dGSph*, cXyz*) const;
bool cross(const cM3dGCyl*, cXyz*) const;
void GetMinMaxCube(cXyz&, cXyz&) const;
const cXyz& GetC(void) const { return mCenter; }
const f32 GetR(void) const { return mRadius; }
f32 GetCX(void) const { return mCenter.GetX(); }
f32 GetCY(void) const { return mCenter.GetY(); }
f32 GetCZ(void) const { return mCenter.GetZ(); }
};
// additional symbols needed for cM3dGSph
extern "C" {
void Set__8cM3dGSphFRC4cXyzf(void);
}
#endif