#include <IceOBB.h>
Public Member Functions | |
void | ComputeLSS (LSS &lss) const |
bool | ComputePlanes (Plane *planes) const |
bool | ComputePoints (Point *pts) const |
bool | ComputeVertexNormals (Point *pts) const |
void | ComputeWorldEdgeNormal (udword edge_index, Point &world_normal) const |
bool | ContainsPoint (const Point &p) const |
void | Create (const AABB &aabb, const Matrix4x4 &mat) |
const inline_ Point & | GetCenter () const |
const udword * | GetEdges () const |
const inline_ Point & | GetExtents () const |
const Point * | GetLocalEdgeNormals () const |
const inline_ Matrix3x3 & | GetRot () const |
inline_ void | GetRotatedExtents (Matrix3x3 &extents) const |
BOOL | IsInside (const OBB &box) const |
inline_ BOOL | IsValid () const |
inline_ | OBB () |
Constructor. More... | |
inline_ | OBB (const Point ¢er, const Point &extents, const Matrix3x3 &rot) |
Constructor. More... | |
inline_ void | Rotate (const Matrix4x4 &mtx, OBB &obb) const |
void | SetEmpty () |
inline_ | ~OBB () |
Destructor. More... | |
Public Attributes | |
Point | mCenter |
B for Box. More... | |
Point | mExtents |
B for Bounding. More... | |
Matrix3x3 | mRot |
O for Oriented. More... | |
Computes an LSS surrounding the OBB.
lss | [out] the LSS |
Definition at line 255 of file IceOBB.cpp.
bool OBB::ComputePlanes | ( | Plane * | planes | ) | const |
Computes the obb planes.
planes | [out] 6 box planes |
Definition at line 82 of file IceOBB.cpp.
bool OBB::ComputePoints | ( | Point * | pts | ) | const |
Computes the obb points.
pts | [out] 8 box points |
Definition at line 125 of file IceOBB.cpp.
bool OBB::ComputeVertexNormals | ( | Point * | pts | ) | const |
Computes vertex normals.
pts | [out] 8 box points |
Definition at line 166 of file IceOBB.cpp.
Returns world edge normal
edge_index | [in] 0 <= edge index < 12 |
world_normal | [out] edge normal in world space |
Definition at line 243 of file IceOBB.cpp.
Tests if a point is contained within the OBB.
p | [in] the world point to test |
Definition at line 32 of file IceOBB.cpp.
Builds an OBB from an AABB and a world transform.
aabb | [in] the aabb |
mat | [in] the world transform |
Definition at line 60 of file IceOBB.cpp.
Returns edges.
Definition at line 197 of file IceOBB.cpp.
Returns local edge normals.
Definition at line 214 of file IceOBB.cpp.
Checks the OBB is inside another OBB.
box | [in] the other OBB |
Definition at line 288 of file IceOBB.cpp.