Lecture 19, Review 2

Some small special topics.
Review lectures 11 through 17 and homework 3.

Same type of quiz as Quiz 1.
Open book, open note, open computer.
Based on WEB pages and lectures 11 through 17.

Key items:

A "point" is 1/72 of an inch on paper,
it may be any size on a computer screen.

Currier font is uniformly spaced, w and i take the same space.
Times Roman font is proportionally spaced, w requires more
space, width, than i. Newspapers get more on a page with
Times Roman font.

Fonts may be normal, regular, bold, italic, shadow, filled, etc.
It requires a lot of work to create a font, thus they are
usually copyrighted. There are typically many fonts available
on your computer. Any program can use any of these fonts that
are a file format the program can read.

True Type Fonts use both line segments and arcs for each glyph.
XWindows fonts, .xbm, are bit mapped fonts provided as "C"
header files.

3D rendering may use Z-plane or Ray Trace or other methods.
Povray is one free Ray Trace renderer.
The rendering may use a frustum volume or a cube volume or other.
The closest surface of the rendered volume is sometimes called
"hither" and the farthest surface "yon". Any physical units
with any scaling may be used in the "world coordinate" volume.

Rendering may show shading, plane faces, wireframe or vertices.
Each may be useful to a user or developer for various purposes.

OpenGL takes a world coordinate, also called the
model coordinate, and multiplies by the 4 by 4 model view matrix.
The resulting translated and rotated homogeneous coordinate [x, y, z, w]
is multipled by the 4 by 4 perspective matrix. The result is
scaled to the screen. The model view matrix is initialized
to the identity matrix and the perspective matrix is
initialized based on the frustum with eye typically at 0,0,0.

Another way to render 3D is an orthographic projection that
has much easier computation.  

Scroll Bars are typically used to "pan" across an image.
Typically scroll bars are on the bottom and right.
Some application allow a user to "zoom" in or out.

Menu bars are created before menu items in most tool kits except
OpenGL with GLUT. Typical menus have the file menu on the
right and help menu on the left.

When editing or changing an existing user file, either make
a copy and edit the original or edit a copy. Then move or
rename, atomic operation, as a final step.

The "Painters Algorithm" renders the farthest away surfaces first.
Typically this uses a linked list for 2D graphics and objects may
be hidden by other objects. By moving the object to the front or
back of the linked list, the hidden object may be seen.