mirror of https://github.com/zeldaret/tp.git
32 lines
1.0 KiB
C++
32 lines
1.0 KiB
C++
#ifndef C_M3D_G_TRI_H_
|
|
#define C_M3D_G_TRI_H_
|
|
|
|
#include "SSystem/SComponent/c_m3d.h"
|
|
#include "SSystem/SComponent/c_m3d_g_cyl.h"
|
|
#include "SSystem/SComponent/c_m3d_g_pla.h"
|
|
#include "SSystem/SComponent/c_xyz.h"
|
|
#include "dolphin/types.h"
|
|
|
|
class cM3dGTri : public cM3dGPla {
|
|
// private:
|
|
public:
|
|
// cM3dGPla mPlane;
|
|
Vec mA;
|
|
Vec mB;
|
|
Vec mC;
|
|
|
|
cM3dGTri() {}
|
|
virtual ~cM3dGTri() {}
|
|
bool cross(const cM3dGCyl*, Vec*) const;
|
|
void setPos(const Vec*, const Vec*, const Vec*);
|
|
void setBg(const Vec*, const Vec*, const Vec*, const cM3dGPla*);
|
|
void set(const Vec*, const Vec*, const Vec*, const Vec*);
|
|
bool Cross(cM3dGCps const& cps, cXyz* xyz) const { return cM3d_Cross_CpsTri(cps, *this, xyz); }
|
|
bool Cross(cM3dGCyl const& cyl, cXyz* xyz) const { return this->cross(&cyl, xyz); }
|
|
bool Cross(cM3dGSph const& sph, cXyz* xyz) const { return cM3d_Cross_SphTri(&sph, this, xyz); }
|
|
bool Cross(cM3dGTri const& other, cXyz* xyz) const {
|
|
return cM3d_Cross_TriTri(*this, other, xyz);
|
|
}
|
|
};
|
|
|
|
#endif |