# Package com.codename1.gaming.physics.box2d.collision

package com.codename1.gaming.physics.box2d.collision

Collision detection primitives (AABBs, manifolds, distance and time of impact queries) for the box2d physics engine.

Part of the box2d simulation engine, a derived work of JBox2D used under the BSD 2-Clause license; see `com.codename1.gaming.physics` for attribution.

- Related Packages
  Package
  Description
  com.codename1.gaming.physics.box2d.collision.broadphase
  Broad phase collision detection (dynamic tree and pair management) for the box2d physics engine.
  com.codename1.gaming.physics.box2d.collision.shapes
  Collision shape definitions (circle, polygon, edge and chain) for the box2d physics engine.
- Class
  Description
  AABB
  An axis-aligned bounding box.
  Collision
  Functions used for computing contact points, distance queries, and TOI queries.
  Collision.ClipVertex
  Used for computing contact manifolds.
  Collision.PointState
  This is used for determining the state of contact points.
  ContactID
  Contact ids to facilitate warm starting.
  ContactID.Type
  Distance
  This is non-static for faster pooling.
  Distance.DistanceProxy
  A distance proxy is used by the GJK algorithm.
  Distance.SimplexCache
  Used to warm start Distance.
  DistanceInput
  Input for Distance.
  DistanceOutput
  Output for Distance.
  Manifold
  A manifold for two touching convex shapes.
  Manifold.ManifoldType
  ManifoldPoint
  A manifold point is a contact point belonging to a contact manifold.
  RayCastInput
  Ray-cast input data.
  RayCastOutput
  Ray-cast output data.
  TimeOfImpact
  Class used for computing the time of impact.
  TimeOfImpact.TOIInput
  Input parameters for TOI
  TimeOfImpact.TOIOutput
  Output parameters for TimeOfImpact
  TimeOfImpact.TOIOutputState
  WorldManifold
  This is used to compute the current state of a contact manifold.