You can use the above java applet to work with 2D optical bench:
Yes. You can add mirrors, lens, light sources,...etc. :D