Unravel Engine C++ Reference
Loading...
Searching...
No Matches
bbox.cpp File Reference
#include "bbox.h"
#include <limits>

Go to the source code of this file.

Namespaces

namespace  math
 

Macros

#define AXISTEST(vEdge, vP0, vP1, nComponent0, nComponent1)
 
#define AXISTEST2(vEdge, vP0, vP1, nComponent0, nComponent1)
 
#define AXISTEST(vEdge, vP0, vP1, nComponent0, nComponent1)
 
#define AXISTEST2(vEdge, vP0, vP1, nComponent0, nComponent1)
 

Macro Definition Documentation

◆ AXISTEST [1/2]

#define AXISTEST ( vEdge,
vP0,
vP1,
nComponent0,
nComponent1 )
Value:
fTemp0 = vEdge[nComponent1] * vP0[nComponent0] - vEdge[nComponent0] * vP0[nComponent1]; \
fTemp1 = vEdge[nComponent1] * vP1[nComponent0] - vEdge[nComponent0] * vP1[nComponent1]; \
if(fTemp0 < fTemp1) \
{ \
fMin = fTemp0; \
fMax = fTemp1; \
} \
else \
{ \
fMin = fTemp1; \
fMax = fTemp0; \
} \
fTemp0 = vAbsEdge[nComponent1] * vExtents[nComponent0] + vAbsEdge[nComponent0] * vExtents[nComponent1]; \
if(fMin > fTemp0 || fMax < -fTemp0) \
return false;

◆ AXISTEST [2/2]

#define AXISTEST ( vEdge,
vP0,
vP1,
nComponent0,
nComponent1 )
Value:
fTemp0 = vEdge[nComponent1] * vP0[nComponent0] - vEdge[nComponent0] * vP0[nComponent1]; \
fTemp1 = vEdge[nComponent1] * vP1[nComponent0] - vEdge[nComponent0] * vP1[nComponent1]; \
if(fTemp0 < fTemp1) \
{ \
fMin = fTemp0; \
fMax = fTemp1; \
} \
else \
{ \
fMin = fTemp1; \
fMax = fTemp0; \
} \
fTemp0 = vAbsEdge[nComponent1] * vExtents[nComponent0] + vAbsEdge[nComponent0] * vExtents[nComponent1]; \
if(fMin > fTemp0 || fMax < -fTemp0) \
return false;

◆ AXISTEST2 [1/2]

#define AXISTEST2 ( vEdge,
vP0,
vP1,
nComponent0,
nComponent1 )
Value:
fTemp0 = -vEdge[nComponent1] * vP0[nComponent0] + vEdge[nComponent0] * vP0[nComponent1]; \
fTemp1 = -vEdge[nComponent1] * vP1[nComponent0] + vEdge[nComponent0] * vP1[nComponent1]; \
if(fTemp0 < fTemp1) \
{ \
fMin = fTemp0; \
fMax = fTemp1; \
} \
else \
{ \
fMin = fTemp1; \
fMax = fTemp0; \
} \
fTemp0 = vAbsEdge[nComponent1] * vExtents[nComponent0] + vAbsEdge[nComponent0] * vExtents[nComponent1]; \
if(fMin > fTemp0 || fMax < -fTemp0) \
return false;

◆ AXISTEST2 [2/2]

#define AXISTEST2 ( vEdge,
vP0,
vP1,
nComponent0,
nComponent1 )
Value:
fTemp0 = -vEdge[nComponent1] * vP0[nComponent0] + vEdge[nComponent0] * vP0[nComponent1]; \
fTemp1 = -vEdge[nComponent1] * vP1[nComponent0] + vEdge[nComponent0] * vP1[nComponent1]; \
if(fTemp0 < fTemp1) \
{ \
fMin = fTemp0; \
fMax = fTemp1; \
} \
else \
{ \
fMin = fTemp1; \
fMax = fTemp0; \
} \
fTemp0 = vAbsEdge[nComponent1] * vExtents[nComponent0] + vAbsEdge[nComponent0] * vExtents[nComponent1]; \
if(fMin > fTemp0 || fMax < -fTemp0) \
return false;