mirror of https://github.com/zeldaret/tp.git
33 lines
726 B
C++
33 lines
726 B
C++
#ifndef C_M3D_G_CYL_H_
|
|
#define C_M3D_G_CYL_H_
|
|
|
|
#include "SComponent/c_xyz.h"
|
|
#include "global.h"
|
|
|
|
// Cylinder
|
|
struct cM3dGCylS {
|
|
cXyz mCenter;
|
|
f32 mRadius;
|
|
f32 mHeight;
|
|
};
|
|
class cM3dGSph;
|
|
|
|
class cM3dGCyl : public cM3dGCylS {
|
|
public:
|
|
cM3dGCyl(const cXyz*, f32, f32);
|
|
virtual ~cM3dGCyl();
|
|
void Set(const cM3dGCylS&);
|
|
void Set(const cXyz&, f32, f32);
|
|
void SetC(const cXyz&);
|
|
void SetH(f32);
|
|
void SetR(f32);
|
|
bool cross(const cM3dGSph*, cXyz*) const;
|
|
bool cross(const cM3dGCyl*, cXyz*) const;
|
|
void calcMinMax(cXyz*, cXyz*);
|
|
const cXyz& GetCP(void) const { return mCenter; }
|
|
f32 GetR(void) const { return mRadius; }
|
|
f32 GetH(void) const { return mHeight; }
|
|
};
|
|
|
|
#endif
|