#include <Box2D/Common/b2Math.h>
#include <climits>
Go to the source code of this file.
Classes | |
union | b2ContactID |
Contact ids to facilitate warm starting. More... | |
struct | b2ContactID::Features |
The features that intersect to form the contact point. More... | |
struct | b2ManifoldPoint |
struct | b2Manifold |
struct | b2WorldManifold |
This is used to compute the current state of a contact manifold. More... | |
struct | b2ClipVertex |
Used for computing contact manifolds. More... | |
struct | b2RayCastInput |
Ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1). More... | |
struct | b2RayCastOutput |
struct | b2AABB |
An axis aligned bounding box. More... | |
Enumerations | |
enum | b2PointState { b2_nullState, b2_addState, b2_persistState, b2_removeState } |
This is used for determining the state of contact points. More... | |
Functions | |
void | b2GetPointStates (b2PointState state1[b2_maxManifoldPoints], b2PointState state2[b2_maxManifoldPoints], const b2Manifold *manifold1, const b2Manifold *manifold2) |
void | b2CollideCircles (b2Manifold *manifold, const b2CircleShape *circle1, const b2Transform &xf1, const b2CircleShape *circle2, const b2Transform &xf2) |
Compute the collision manifold between two circles. | |
void | b2CollidePolygonAndCircle (b2Manifold *manifold, const b2PolygonShape *polygon, const b2Transform &xf1, const b2CircleShape *circle, const b2Transform &xf2) |
Compute the collision manifold between a polygon and a circle. | |
void | b2CollidePolygons (b2Manifold *manifold, const b2PolygonShape *polygon1, const b2Transform &xf1, const b2PolygonShape *polygon2, const b2Transform &xf2) |
Compute the collision manifold between two polygons. | |
int32 | b2ClipSegmentToLine (b2ClipVertex vOut[2], const b2ClipVertex vIn[2], const b2Vec2 &normal, float32 offset) |
Clipping for contact manifolds. | |
bool | b2TestOverlap (const b2Shape *shapeA, const b2Shape *shapeB, const b2Transform &xfA, const b2Transform &xfB) |
Determine if two generic shapes overlap. | |
bool | b2TestOverlap (const b2AABB &a, const b2AABB &b) |
Variables | |
const uint8 | b2_nullFeature = UCHAR_MAX |
Structures and functions used for computing contact points, distance queries, and TOI queries.
enum b2PointState |
int32 b2ClipSegmentToLine | ( | b2ClipVertex | vOut[2], | |
const b2ClipVertex | vIn[2], | |||
const b2Vec2 & | normal, | |||
float32 | offset | |||
) |
Clipping for contact manifolds.
void b2CollideCircles | ( | b2Manifold * | manifold, | |
const b2CircleShape * | circle1, | |||
const b2Transform & | xf1, | |||
const b2CircleShape * | circle2, | |||
const b2Transform & | xf2 | |||
) |
Compute the collision manifold between two circles.
void b2CollidePolygonAndCircle | ( | b2Manifold * | manifold, | |
const b2PolygonShape * | polygon, | |||
const b2Transform & | xf1, | |||
const b2CircleShape * | circle, | |||
const b2Transform & | xf2 | |||
) |
Compute the collision manifold between a polygon and a circle.
void b2CollidePolygons | ( | b2Manifold * | manifold, | |
const b2PolygonShape * | polygon1, | |||
const b2Transform & | xf1, | |||
const b2PolygonShape * | polygon2, | |||
const b2Transform & | xf2 | |||
) |
Compute the collision manifold between two polygons.
void b2GetPointStates | ( | b2PointState | state1[b2_maxManifoldPoints], | |
b2PointState | state2[b2_maxManifoldPoints], | |||
const b2Manifold * | manifold1, | |||
const b2Manifold * | manifold2 | |||
) |
Compute the point states given two manifolds. The states pertain to the transition from manifold1 to manifold2. So state1 is either persist or remove while state2 is either add or persist.
bool b2TestOverlap | ( | const b2Shape * | shapeA, | |
const b2Shape * | shapeB, | |||
const b2Transform & | xfA, | |||
const b2Transform & | xfB | |||
) |
Determine if two generic shapes overlap.
const uint8 b2_nullFeature = UCHAR_MAX |