Merge branch 'cleanup'
Correctly handling first or last surface having infinite thickness for drawing.
Fixed surface insertion.
Moved IDs into class to shorten names.
Got it loading a .zmx file.
Cleaned up initialization of row context menu.
Merge branch 'zmx-file'
Started working on launching rays sanely when the 0th surface is at infinity.
Merge branch 'fix-surface-insert'
Starting to fix aspect ratio.
Looking better.
Correctly getting size from parent.
Cleaned up, removed use of self.WIDTH and self.HEIGHT which are really just self.GetClientSize().
Got it highlighting surfaces. But why do the rays go away?
Now looping over field points.
Now it draws the rays but it still doesn't highlight when clicking on a blank cell and it doens't double buffer.
Merge branch 'ray-drawing'
Merge branch 'fix-aspect-ratio'
Added DataModel.py -- a start for a proper data structure for doing the optical modeling.
Merge pull request #2 from BenFrantzDale/DataModel

Added DataModel.py -- a start for a proper data structure for doing the ...