Computing: Free Pascal Programming

Programming Home   Home   Contact

Ray tracing (RayTrace).


Description: Physics (geometrical optics) related application, that may be used to trace rays with concave/convex mirrors and thin bi-convex/bi-concave lenses. The application determines all relevant data (describing the optical device and the image formed, calculating focal length, image height and distance, lens strength and magnification) as well as draws a graphical display of the P-, F- and C-ray passing through the system studied.

Improvement: Adapting the ingoing ray lenth depending on its vertical position (i.e. depending on the mirror/lens shape at this position).

Possible extensions: Adding flat mirrors and planar-convex/planar-concave lenses.

Free Pascal features: Bitmap canvas graphics; drawing arcs and ellipses. Using line equation and line intersection calculations to draw lines passing through 2 given points. Adding arrow-heads to a line.

Screenshots:

Ray tracing: Mirror case 2 image
 
Ray tracing: Lens case 1 image