Class ManifoldPoint


  • public class ManifoldPoint
    extends java.lang.Object
    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.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      ContactID id
      uniquely identifies a contact point between two shapes
      Vec2 localPoint
      usage depends on manifold type
      float normalImpulse
      the non-penetration impulse
      float tangentImpulse
      the friction impulse
    • Constructor Summary

      Constructors 
      Constructor Description
      ManifoldPoint()
      Blank manifold point with everything zeroed out.
      ManifoldPoint​(ManifoldPoint cp)
      Creates a manifold point as a copy of the given point
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void set​(ManifoldPoint cp)
      Sets this manifold point form the given one
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • localPoint

        public final Vec2 localPoint
        usage depends on manifold type
      • normalImpulse

        public float normalImpulse
        the non-penetration impulse
      • tangentImpulse

        public float tangentImpulse
        the friction impulse
      • id

        public final ContactID id
        uniquely identifies a contact point between two shapes
    • Constructor Detail

      • ManifoldPoint

        public ManifoldPoint()
        Blank manifold point with everything zeroed out.
      • ManifoldPoint

        public ManifoldPoint​(ManifoldPoint cp)
        Creates a manifold point as a copy of the given point
        Parameters:
        cp - point to copy from
    • Method Detail

      • set

        public void set​(ManifoldPoint cp)
        Sets this manifold point form the given one
        Parameters:
        cp - the point to copy from