A class describing the kIOS collision structure, which is a set of spheres. More...
#include <kIOS.h>
Classes | |
struct | kIOS_Sphere |
One sphere in kIOS. More... | |
Public Member Functions | |
const Vec3f & | center () const |
Center of the kIOS. | |
bool | contain (const Vec3f &p) const |
Check whether the kIOS contains a point. | |
FCL_REAL | depth () const |
Depth of the kIOS. | |
FCL_REAL | distance (const kIOS &other, Vec3f *P=NULL, Vec3f *Q=NULL) const |
The distance between two kIOS. | |
FCL_REAL | height () const |
Height of the kIOS. | |
kIOS | operator+ (const kIOS &other) const |
Return the merged kIOS of current kIOS and the other one. | |
kIOS & | operator+= (const Vec3f &p) |
A simple way to merge the kIOS and a point. | |
kIOS & | operator+= (const kIOS &other) |
Merge the kIOS and another kIOS. | |
bool | overlap (const kIOS &other) const |
Check collision between two kIOS. | |
bool | overlap (const kIOS &other, kIOS &overlap_part) const |
Check collision between two kIOS and return the overlap part. For kIOS, we return nothing, as the overlappart of two kIOS usually is not an kIOS. | |
FCL_REAL | size () const |
size of the kIOS (used in BV_Splitter to order two kIOSs) | |
FCL_REAL | volume () const |
Volume of the kIOS. | |
FCL_REAL | width () const |
Width of the kIOS. | |
Public Attributes | |
unsigned int | num_spheres |
The number of spheres, no larger than 5. | |
OBB | obb |
@ OBB related with kIOS | |
kIOS_Sphere | spheres [5] |
The (at most) five spheres for intersection. | |
Static Private Member Functions | |
static kIOS_Sphere | encloseSphere (const kIOS_Sphere &s0, const kIOS_Sphere &s1) |
generate one sphere enclosing two spheres |
A class describing the kIOS collision structure, which is a set of spheres.
const Vec3f& fcl::kIOS::center | ( | ) | const [inline] |
bool fcl::kIOS::contain | ( | const Vec3f & | p | ) | const [inline] |
FCL_REAL fcl::kIOS::depth | ( | ) | const |
FCL_REAL fcl::kIOS::distance | ( | const kIOS & | other, |
Vec3f * | P = NULL , |
||
Vec3f * | Q = NULL |
||
) | const |
static kIOS_Sphere fcl::kIOS::encloseSphere | ( | const kIOS_Sphere & | s0, |
const kIOS_Sphere & | s1 | ||
) | [inline, static, private] |
FCL_REAL fcl::kIOS::height | ( | ) | const |
bool fcl::kIOS::overlap | ( | const kIOS & | other | ) | const |
bool fcl::kIOS::overlap | ( | const kIOS & | other, |
kIOS & | overlap_part | ||
) | const [inline] |
FCL_REAL fcl::kIOS::size | ( | ) | const |
FCL_REAL fcl::kIOS::volume | ( | ) | const |
FCL_REAL fcl::kIOS::width | ( | ) | const |
unsigned int fcl::kIOS::num_spheres |