blaze.collision.collision



union ContactID ;
Contact point ID

struct Features ;
Contact features

struct ManifoldPoint ;
A manifold point is a contact point belonging to a contact manifold. It holds details related to the geometry and dynamics of the contact points. The point is stored in local coordinates because CCD requires sub-stepping in which the separation is stale.

bVec2 localPoint1 ;
local position of the contact point in body1

bVec2 localPoint2 ;
local position of the contact point in body2

float separation ;
the separation of the shapes along the normal vector

float normalImpulse ;
the non-penetration impulse

float tangentImpulse ;
the friction impulse

ContactID id ;
uniquely identifies a contact point between two shapes

struct Manifold ;
A manifold for two touching convex shapes.

ManifoldPoint [2LU] points ;
the points of contact

bVec2 normal ;
the shared unit normal vector

int pointCount ;
the number of manifold points

struct AABB ;
An axis aligned bounding box.

bVec2 lowerBound ;
the lower vertex (lower left)

bVec2 upperBound ;
the upper vertex (upper right)

struct OBB ;
An oriented bounding box.

bMat22 R ;
the rotation matrix

bVec2 center ;
the local centroid

bVec2 extents ;
the half-widths.

bool testOverlap (AABB a, AABB b);
Test if two AABB's overlap

Returns:
true if there is an overlap. false otherwise

bool testOverlap (AABB a, bVec2 point);
Test if AABB contains the given point

Params:
AABB a the box
bVec2 point the point

Returns:
true if there is an intersection, false otherwise

struct Segment ;
A line segment.

bVec2 p1 ;
the starting point

bVec2 p2 ;
the ending point

bool testSegment (ref float lambda, ref bVec2 normal, Segment segment, float maxLambda);
Tests to determine if a ray intersects the given segment

Params:
float lambda unknown
bVec2 normal the ray
Segment segment the segment
float maxLambda unknown

Returns:
true if the ray intersects the segment, false otherwise

Page was generated with on Tue Feb 10 19:13:11 2009