#include <CDVolume.h>
|
| | Collidable (const Math::Point<> ¢er_=Math::g_origin, const Math::Matrix3x3 &rot_=Math::g_identityMatrix3x3, void *userPointer_=0, Utils::uint colGroup_=COL_GROUP_HIT_ALL_HIT_BY_ALL) |
| |
| virtual | ~Collidable () |
| |
| void | translate (const Math::Point<> &delta_) |
| |
| void | setCenter (const Math::Point<> ¢er_) |
| |
| Math::Point | getCenter () const |
| |
| void | setNonColTransform (const Math::Point<> ¢er_, const Math::Matrix3x3 &rot_) |
| |
| const Math::Point & | getNonColCenter () const |
| |
| const Math::Matrix3x3 & | getNonColRot () const |
| |
| void | setRot (const Math::Matrix3x3 &rot_) |
| |
| Math::Matrix3x3 | getRot () const |
| |
| void | setUserPointer (void *userPointer_) |
| |
| void * | getUserPointer () const |
| |
| Utils::uint | canGroupHitMe (Utils::uint colGroup_) const |
| |
| Utils::uint | getColGroup () const |
| |
| void | setColGroup (Utils::uint colGroup_) |
| |
| virtual Shape * | getShape ()=0 |
| |
| virtual const Shape * | getShape () const =0 |
| |
| virtual SHAPE_TYPE | getType () const |
| |
| virtual float | getDist (const Collidable *aCollidable_) const |
| |
| virtual bool | getFirstIntersection (const Math::Point<> &thisVel_, const Collidable *otherCollidable_, const Math::Point<> &otherVel_, HitInfo &hitInfo_) const |
| |
| virtual bool | getClosestRayIntersection (const Math::Point<> &rayOrigin_, const Math::Point<> &rayDir_, Math::Point<> &hitPos_, float &t_, Math::Point<> &hitNormal_) const |
| |
| virtual OpenSkyNet::CD::Collidable::~Collidable |
( |
| ) |
|
|
inlinevirtual |
Returns > 0 iff colGroup_ can collide w/ this object.
- Parameters
-
| colGroup_ | COL_GROUP_HIT_ALL_HIT_BY_ALL - object can hit everything hittable, AND object is hittable by all that can hit COL_GROUP_HIT_ALL_HIT_BY_NONE - object can hit everything hittable, AND object is not hittable by anything COL_GROUP_HIT_NONE_HIT_BY_ALL - object can not hit anything, AND object is hittable by all that can hit COL_GROUP_HIT_NONE_HIT_BY_NONE - object can not hit anything, AND object is not hittable by anything |
| Math::Point OpenSkyNet::CD::Collidable::getCenter |
( |
| ) |
const |
|
inline |
| Utils::uint OpenSkyNet::CD::Collidable::getColGroup |
( |
| ) |
const |
|
inline |
| virtual float OpenSkyNet::CD::Collidable::getDist |
( |
const Collidable * |
aCollidable_ | ) |
const |
|
inlinevirtual |
| const Math::Point& OpenSkyNet::CD::Collidable::getNonColCenter |
( |
| ) |
const |
|
inline |
| virtual Shape* OpenSkyNet::CD::Collidable::getShape |
( |
| ) |
|
|
pure virtual |
| virtual const Shape* OpenSkyNet::CD::Collidable::getShape |
( |
| ) |
const |
|
pure virtual |
| virtual SHAPE_TYPE OpenSkyNet::CD::Collidable::getType |
( |
| ) |
const |
|
inlinevirtual |
| void* OpenSkyNet::CD::Collidable::getUserPointer |
( |
| ) |
const |
|
inline |
| void OpenSkyNet::CD::Collidable::setCenter |
( |
const Math::Point<> & |
center_ | ) |
|
|
inline |
Sets a transform known not to collide w/ other objects. This is used in iterative collision detection routines whereby only one object can be tested for a new transform at a time; the rest of the objects have to be at "safe" transforms.
| void OpenSkyNet::CD::Collidable::setUserPointer |
( |
void * |
userPointer_ | ) |
|
|
inline |
The user pointer is typically a pointer to a containing Core::Object.
The documentation for this class was generated from the following file: