Simulating the reflections off a cup in Processing.
https://www.youtube.com/watch?v=qhbuKbxJsk8
Download processing from the Processing webpage, place the .pde in a folder with the same name and open the file.
You can download the built version from the app store.