Huygen's Principle Reflection/Refration
This applet is a sort of tutorial which explains the reflection and the refraction of waves by the principle of Huygens. Explanations of each of the steps are provided in the text box.
Reflection and Refraction Illustrating reflection and refraction, including total internal reflection.
Refraction of Light
A ray of light coming from the top left strikes the boundary surface of two media. The applet shows the reflected and the refracted ray and calculates the corresponding angles.
Refraction Explanation

This animation shows wave fronts entering a mediums at a non-zero angle of incidence.

Refraction through a Prism
This applet shows the refraction of light through a prism. The user can control the index of refraction of the prism as well as the position and shape of the prism.
Image Formation of a Converging Lens
This applets shows the image formation by a converging lens. The three principle rays are shown.
Geometric Optics

How does a lens form an image? See how light rays are refracted by a lens. Watch how the image changes when you adjust the focal length of the lens, move the object, move the lens, or move the screen.

Thick Lens

The Thick Lens model allows the user to simulate a lens (mirror) by adjusting the physical properties of a transparent (reflecting) object and observing the object's effect on a beam of light.  The user can adjust the concavity of the sides, the index of refraction and its environment, and the height and width of the object as well as the size of the incident light and the horizontal position of the transparent object.

The downloadable Java Applets were taken either from PhET or Open Source Physics.

The Flash Animations were all taken from David M. Harrison from the University of Toronto.