mirror of
https://github.com/zeldaret/tww.git
synced 2026-07-11 14:38:38 -04:00
47 lines
1.5 KiB
C++
47 lines
1.5 KiB
C++
//
|
|
// Generated by dtk
|
|
// Translation Unit: c_m3d_g_sph.cpp
|
|
//
|
|
|
|
#include "SSystem/SComponent/c_m3d_g_sph.h"
|
|
#include "SSystem/SComponent/c_m3d.h"
|
|
#include "JSystem/JUtility/JUTAssert.h"
|
|
#include "float.h"
|
|
|
|
#define CHECK_FLOAT_CLASS(line, x) JUT_ASSERT(line, !(fpclassify(x) == 1));
|
|
#define CHECK_FLOAT_RANGE(line, x) JUT_ASSERT(line, -1.0e32f < x && x < 1.0e32f);
|
|
#define CHECK_VEC3_RANGE(line, v) JUT_ASSERT(line, -1.0e32f < v.x && v.x < 1.0e32f && -1.0e32f < v.y && v.y < 1.0e32f && -1.0e32f < v.z && v.z < 1.0e32f)
|
|
|
|
/* 8025238C-80252624 .text SetC__8cM3dGSphFRC4cXyz */
|
|
void cM3dGSph::SetC(const cXyz& p) {
|
|
CHECK_FLOAT_CLASS(18, p.x);
|
|
CHECK_FLOAT_CLASS(19, p.y);
|
|
CHECK_FLOAT_CLASS(20, p.z);
|
|
CHECK_VEC3_RANGE(23, p);
|
|
mCenter = p;
|
|
}
|
|
|
|
/* 80252624-80252750 .text SetR__8cM3dGSphFf */
|
|
void cM3dGSph::SetR(float r) {
|
|
CHECK_FLOAT_CLASS(32, r);
|
|
CHECK_FLOAT_RANGE(33, r);
|
|
mRadius = r;
|
|
}
|
|
|
|
/* 80252750-8025277C .text cross__8cM3dGSphCFPC8cM3dGSphP4cXyz */
|
|
bool cM3dGSph::cross(const cM3dGSph* pOther, cXyz* pOut) const {
|
|
return cM3d_Cross_SphSph(pOther, this, pOut);
|
|
}
|
|
|
|
/* 8025277C-802527AC .text cross__8cM3dGSphCFPC8cM3dGCylP4cXyz */
|
|
bool cM3dGSph::cross(const cM3dGCyl* pOther, cXyz* pOut) const {
|
|
f32 f;
|
|
return cM3d_Cross_CylSph(pOther, this, pOut, &f);
|
|
}
|
|
|
|
/* 802527AC-802527D4 .text cross__8cM3dGSphCFPC8cM3dGSphPf */
|
|
bool cM3dGSph::cross(const cM3dGSph* pOther, f32* pOut) const {
|
|
f32 f;
|
|
return cM3d_Cross_SphSph(this, pOther, &f, pOut);
|
|
}
|