Inspired by a job application for the field of optical engineering I wanted to get my hands a bit dirty and write some own code to trace the path of a light beam in an optical assembly.
The code is hosted on Launchpad.
The example shows a single beam originating from the left lower part of the scene entering a large prism (light blue, n=1.52) which contains a void (dark blue, n=1.00). The beam leaves the scene above the source on the left side.
Among the already implemented and planed features are: