The 2D Surface Normals applet shows students how surface normals are affected by non-proportional (non-uniform) scaling. Without this knowledge, the shading of non-uniformly scaled objects is often calculated incorrectly.
The 2D Surface Normals applet was developed for use in an undergraduate computer graphics programming course and is appropriate chiefly for computer science students and anyone programming 3D graphics.
The red and green vectors can be stretched along their axis to stretch the magenta oval. Any of the blue normals can be selected. As the user stretches the oval, he/she can watch the coordinates of the normal change at the bottom. Except for the axis-aligned normals, all of the normals will change through a non-proportional scale. The user can also press the "Tips" button to display hints and exercises in the white help field.