Project Euler 144

My solution to Project Euler 144,
regarding reflections of a laser
in an ellipse.

This simulates 2 bounces every frame,
my C# port of this (if used without
creating graphics) runs almost instantly.

Port stats:
Without compiler optimization:
6510ms elapsed for 100,000 runs = 0.065 ms/run
With compiler optimization:
4870ms elapsed for 100,000 runs = 0.049 ms/run

About 33 lines of C# code