Class b2Manifold

A manifold for two touching convex shapes. Box2D supports multiple types of contact: - clip point versus plane with radius - point versus point with radius (circles) The local point usage depends on the manifold type: -e_circles: the local center of circleA -e_faceA: the center of faceA -e_faceB: the center of faceB Similarly the local normal usage: -e_circles: not used -e_faceA: the normal on polygonA -e_faceB: the normal on polygonB We store contacts in this way so that position correction can account for movement, which is critical for continuous physics. All contact scenarios must be expressed in one of these types. This structure is stored across time steps, so we keep it small.

Index

Constructor methods

Properties

Methods

Constructor methods

constructor(): b2Manifold

Creates a new manifold.

Returns

b2Manifold

Properties

public static e_circles: number

Circles

public static e_faceA: number

Face A

public static e_faceB: number

Face B

public m_localPlaneNormal: b2Vec2

Not used for Type e_points

public m_localPoint: b2Vec2

Usage depends on manifold type

public m_pointCount: number

The number of manifold points

public m_points: b2ManifoldPoint[]

The points of contact

public m_type: number

Manifold type.

Methods

public Copy(): b2Manifold

Copies the manifold.

Returns

b2Manifold

Copy of this manifold.

public Reset()

Resets this manifold.

public Set(m: b2Manifold)

Sets this manifold from another manifold.

Parameters