Vorderman #1 Check in the code archives for the billiards physics program. Unless you specifically want rectangular collisions then you should be able to adapt the code quite easily.