|
FCL
0.6.0
Flexible Collision Library
|
A class describing the kIOS collision structure, which is a set of spheres. More...
#include <kIOS.h>
Public Types | |
| using | S = S_ |
Public Member Functions | |
| bool | overlap (const kIOS< S > &other) const |
| Check collision between two kIOS. | |
| bool | overlap (const kIOS< S > &other, kIOS< S > &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. More... | |
| bool | contain (const Vector3< S > &p) const |
| Check whether the kIOS contains a point. | |
| kIOS< S > & | operator+= (const Vector3< S > &p) |
| A simple way to merge the kIOS and a point. | |
| kIOS< S > & | operator+= (const kIOS< S > &other) |
| Merge the kIOS and another kIOS. | |
| kIOS< S > | operator+ (const kIOS< S > &other) const |
| Return the merged kIOS of current kIOS and the other one. | |
| const Vector3< S > & | center () const |
| Center of the kIOS. | |
| S | width () const |
| Width of the kIOS. | |
| S | height () const |
| Height of the kIOS. | |
| S | depth () const |
| Depth of the kIOS. | |
| S | volume () const |
| Volume of the kIOS. | |
| S | size () const |
| size of the kIOS (used in BV_Splitter to order two kIOSs) | |
| S | distance (const kIOS< S > &other, Vector3< S > *P=nullptr, Vector3< S > *Q=nullptr) const |
| The distance between two kIOS. | |
Static Public Member Functions | |
| static constexpr S | ratio () |
| static constexpr S | invSinA () |
| static S | cosA () |
Public Attributes | |
| kIOS_Sphere | spheres [5] |
| The (at most) five spheres for intersection. | |
| unsigned int | num_spheres |
| The number of spheres, no larger than 5. | |
| OBB< S > | obb |
| OBB related with kIOS. | |
A class describing the kIOS collision structure, which is a set of spheres.