This was a
Physics I extra credit assignment that displays a system of objects in motion reacting to each others presence in accordance to Netwon's Third Law.
The algorithm was developed in a single function at first and used a spreadsheet to plot the path of the planet.
After confirming that the method worked, I built a PyGame interface to display the graphics.
The challenging part of this program was to display what was happening with the models in the simulation.
By developing a simple camera model that allows the user to change the position of the view and zoom, the objects being simulated can be viewed in a user friendly manner. I also included a feature to keep a specific body in the center of the camera's view port so that one could simulate our understanding of the solar system before the Copernican Revolution.
The source is available on GitHub