1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

I Generalizing collision normal between two arbitrary shapes

  1. Jun 14, 2016 #1
    I am working on a physics engine, and I have a question about the collision normal. There are a lot of different ways people say to calculate this, perpendicular to the collision angle, perpendicular to the edge of body 'B', etc. I was wondering if it would be okay to assume the collision normal is always [1,0]. If that is not okay, is this:
    • vector = distance(A.Center, B.Center)
    • angle = atan2(vector.Y, vector.X) + PI / 2
    • normal = [cos(angle), sin(angle)]
  2. jcsd
  3. Jun 17, 2016 #2


    User Avatar
    Science Advisor
    Homework Helper
    Gold Member

    Not sure how you are defining collision normal, but basing it on the line joining the mass centres does not sound right.
    First, there is the question of the tangent plane at the point of contact. The normal to that could be considered a collision normal.
    Next, there is the relative velocity. The direction of that vector is also relevant.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted