Inside of the ImpulsePhysics::CollisionChecks2D namespace, you will find the following functions available to you to check for any possible overlap:
(All of these return a bool as value, with true meaning the two given 2D Primitives are overlapping.)
Point tests
IsPointOnLine(Point2D, Line2D)
IsPointInCircle(Point2D, Circle2D)
IsPointInRectangle(Point2D, Rectangle2D)
IsPointInOrientedRectangle(Point2D, RectangleOriented)
Line tests
IsLineInsideCircle(Line2D, Circle2D)
IsLineInsideRectnagle(Line2D, Rectangle2D)
IsLineInsideOrientedRectangle(Line2D, RectangleOriented)
Circle tests
CircleCircleCollision(Circle2D, Circle2D)
CircleRectangleCollision(Circle2D, Rectangle2D)
CircleOrientedRectangleCollision(Circle2D, RectangleOriented)
Rectangle tests
RectangleRectangleCollision(Rectangle2D, Rectangle2D)
RectangleRectangleCollisionSAT(Rectnagle2D, Rectangle2D) – similar to the above, but uses the SAT algorithm instead.
Oriented Rectangle tests
OrientedRectangleRectangleCollision(RectangleOriented, Rectangle2D)
OrientedRectangleOrientedRectangleCollision(RectangleOriented, RectangleOriented)