ManifoldPoint class

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 local point usage depends on the manifold type:

  • e_circles: the local center of circleB.
  • e_faceA: the local center of cirlceB or the clip point of polygonB.
  • e_faceB: the clip point of polygonA.

This structure is stored across time steps, so we keep it small. Note: the impulses are used for internal caching and may not provide reliable contact forces, especially for high speed collisions.


Blank manifold point with everything zeroed out.
ManifoldPoint.copy(ManifoldPoint manifoldPoint)
Creates a manifold point as a copy of the given point.


hashCode int
The hash code for this object.
no setterinherited
id ContactID
uniquely identifies a contact point between two shapes
localPoint Vector2
usage depends on manifold type
normalImpulse double
the non-penetration impulse
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
tangentImpulse double
the friction impulse
getter/setter pair


noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
set(ManifoldPoint manifoldPoint) → void
Sets this manifold point form the given one.
toString() String
A string representation of this object.


operator ==(Object other) bool
The equality operator.