ManifoldType enum

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.


CIRCLES → const ManifoldType
const ManifoldType(0)
FACE_A → const ManifoldType
const ManifoldType(1)
FACE_B → const ManifoldType
const ManifoldType(2)
values → const List<ManifoldType>

A constant List of the values in this enum, in order of their declaration.

const List<ManifoldType>


hashCode int
The hash code for this object. [...]
read-only, inherited
index int

The integer index of this enum.

runtimeType Type
A representation of the runtime type of the object.
read-only, inherited


noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
toString() String
A string representation of this object. [...]


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