Elastic collision of rotating bodies

How would you explain in detail elastic collision of two rotating bodies to someone with basic understanding of classical mechanics? I'm writing simple physics engine, but now only simulating non-rotating spheres and would like to step it up a bit. So what reading do you recommend so I could understand what exactly is happening when two spheres or boxes collide (perfectly in 2 dimensions)?

19k 6 6 gold badges 62 62 silver badges 104 104 bronze badges asked Apr 2, 2013 at 13:11 267 4 4 silver badges 8 8 bronze badges Commented Apr 2, 2013 at 13:15

1 Answer 1

$\begingroup$

I worked on a physics engine written in C# that does just this.

Here are my notes on this topic.

Objects have both translational and rotational momentum.

When two objects collide, the overall algorithm goes like this:

1> Find the total momentum of both objects. Calculate the translational and rotational momentum, the vector sum of this is the total momentum of the object.

2> Split the momentum using the usual momentum splitting equation you would ordinarily use. (As in here)

Each object now has their new momentum. The next step is to decide how much of that momentum is translational and rotational.

3> Imagine a vector A which goes from the point of collision to the center of mass of the object that was hit. The component of the incoming momentum vector which is parallel with A forms the new translational momentum vector, the rest of the vector represents rotational momentum.

The extra notes I have linked to show more details on my methematical working, and also a description of how to handle inelastic collisions.

You can find the physics engine here, and an implementation of the collision handling here