b2Contact Class Reference
#include <b2Contact.h>
List of all members.
Public Member Functions |
b2Manifold * | GetManifold () |
const b2Manifold * | GetManifold () const |
void | GetWorldManifold (b2WorldManifold *worldManifold) const |
| Get the world manifold.
|
bool | IsTouching () const |
| Is this contact touching?
|
void | SetEnabled (bool flag) |
bool | IsEnabled () const |
| Has this contact been disabled?
|
b2Contact * | GetNext () |
| Get the next contact in the world's contact list.
|
const b2Contact * | GetNext () const |
b2Fixture * | GetFixtureA () |
| Get the first fixture in this contact.
|
const b2Fixture * | GetFixtureA () const |
b2Fixture * | GetFixtureB () |
| Get the second fixture in this contact.
|
const b2Fixture * | GetFixtureB () const |
virtual void | Evaluate (b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)=0 |
| Evaluate this contact with your own manifold and transforms.
|
Protected Types |
enum | { e_islandFlag = 0x0001,
e_touchingFlag = 0x0002,
e_enabledFlag = 0x0004,
e_filterFlag = 0x0008
} |
Protected Member Functions |
void | FlagForFiltering () |
| Flag this contact for filtering. Filtering will occur the next time step.
|
| b2Contact () |
| b2Contact (b2Fixture *fixtureA, b2Fixture *fixtureB) |
virtual | ~b2Contact () |
void | Update (b2ContactListener *listener) |
Static Protected Member Functions |
static void | AddType (b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB) |
static void | InitializeRegisters () |
static b2Contact * | Create (b2Fixture *fixtureA, b2Fixture *fixtureB, b2BlockAllocator *allocator) |
static void | Destroy (b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator) |
static void | Destroy (b2Contact *contact, b2BlockAllocator *allocator) |
Protected Attributes |
uint32 | m_flags |
b2Contact * | m_prev |
b2Contact * | m_next |
b2ContactEdge | m_nodeA |
b2ContactEdge | m_nodeB |
b2Fixture * | m_fixtureA |
b2Fixture * | m_fixtureB |
b2Manifold | m_manifold |
int32 | m_toiCount |
Static Protected Attributes |
static b2ContactRegister | s_registers [b2Shape::e_typeCount][b2Shape::e_typeCount] |
static bool | s_initialized = false |
Friends |
class | b2ContactManager |
class | b2World |
class | b2ContactSolver |
class | b2Body |
class | b2Fixture |
Detailed Description
The class manages contact between two shapes. A contact exists for each overlapping AABB in the broad-phase (except if filtered). Therefore a contact object may exist that has no contact points.
Member Enumeration Documentation
anonymous enum [protected] |
- Enumerator:
e_islandFlag |
|
e_touchingFlag |
|
e_enabledFlag |
|
e_filterFlag |
|
Constructor & Destructor Documentation
b2Contact::b2Contact |
( |
|
) |
[inline, protected] |
virtual b2Contact::~b2Contact |
( |
|
) |
[inline, protected, virtual] |
Member Function Documentation
void b2Contact::FlagForFiltering |
( |
|
) |
[inline, protected] |
Flag this contact for filtering. Filtering will occur the next time step.
const b2Fixture * b2Contact::GetFixtureA |
( |
|
) |
const [inline] |
b2Fixture * b2Contact::GetFixtureA |
( |
|
) |
[inline] |
Get the first fixture in this contact.
const b2Fixture * b2Contact::GetFixtureB |
( |
|
) |
const [inline] |
b2Fixture * b2Contact::GetFixtureB |
( |
|
) |
[inline] |
Get the second fixture in this contact.
const b2Manifold * b2Contact::GetManifold |
( |
|
) |
const [inline] |
Get the contact manifold. Do not modify the manifold unless you understand the internals of Box2D.
const b2Contact * b2Contact::GetNext |
( |
|
) |
const [inline] |
Get the next contact in the world's contact list.
void b2Contact::GetWorldManifold |
( |
b2WorldManifold * |
worldManifold |
) |
const [inline] |
void b2Contact::InitializeRegisters |
( |
|
) |
[static, protected] |
bool b2Contact::IsEnabled |
( |
|
) |
const [inline] |
Has this contact been disabled?
bool b2Contact::IsTouching |
( |
|
) |
const [inline] |
Is this contact touching?
void b2Contact::SetEnabled |
( |
bool |
flag |
) |
[inline] |
Enable/disable this contact. This can be used inside the pre-solve contact listener. The contact is only disabled for the current time step (or sub-step in continuous collisions).
Friends And Related Function Documentation
Member Data Documentation
The documentation for this class was generated from the following files: