BOOK REVIEW

# The Marvels of PostScript

*Mathematical Illustrations: A Manual of Geometry and
PostScript*. Bill Casselman. xviii + 318 pp. Cambridge
University Press, 2005. $39.99.

The beauty of mathematics resides in its abstractions: the definitions, the theorems, and especially those proofs that the late Paul Erdös said were "written in the [divine] book." In physics, chemistry and biology, accurate pictures and models are considered both valid and aesthetically rewarding—consider the drawings of Leonardo da Vinci and Andreas Vesalius, the double helix and even the plasticized bodies of Günter von Hagen.

Not so in mathematics, where a fervent iconoclasm periodically sweeps the profession. Pictures and models are held in contempt. Proofs based on pictures are said to mislead, to gloss over real questions, to miss special cases—in short, to lie. This disapproval was shared in by an influential, anonymous group of mathematicians in the mid-20th century who were intent on creating a unified account of all of mathematics. They published picture-free books under the pseudonym of Nicolas Bourbaki.

The advent of computer graphics and a resurgence of interest in low-dimensional geometry and topology turned the tide. Those of us engaged in mathematical illustration learned to address wider audiences and to adopt contemporary media that are new even in such picturesque fields as geometry.

A new book by Bill Casselman, *Mathematical Illustrations: A
Manual of Geometry and PostScript,* addresses the role of
computer graphics in geometrical illustrations. Originally,
computer-generated pictures were drawn with a bedplotter or on an
oscillograph tube. Both simulated a pen or stylus moving across
paper or copperplate, guided by what is called vector graphics.
Pixel-based raster graphics, as in television and flat-panel
screens, mimics the pointillist method associated with the artist
Georges Seurat, who covered the canvas with tiny spots of paint.

Although all graphics is now raster-based, both techniques persist for reasons that will be clear. So-called bitmap (pointillist) graphics powers Bill Atkinson's pioneering MacPaint, Adobe's contemporary Photoshop, and the open-source GIMP. Vector graphics, such as Apple's MacDraw, Adobe's Illustrator, Xfig and The Geometer's Sketchpad, can only be simulated on raster graphics devices.

In any computer-generated picture under magnification, we see that
apparently straight lines and smooth curves reveal ugly stair-steps,
called *jaggies,* and sharp images dissolve into blurs. But
technical methods, called antialiasing techniques, can make jaggies
invisible at some particular magnification. That's where vector
graphics comes into its own. It encodes pictures, whether fancy
polyhedra or humble mathematical symbols, with an instruction set
that includes "pen up, move pen, pen down, drag pen" (to
borrow the terminology of the bedplotter). This code (unlike bitmap
images) can be easily edited; scaling the data produces sharp images
at all magnifications. This principle governs the design and
generation of TEX fonts, and, what's more important, of PostScript printers.

The geometry that best illustrates vector-graphic drawing methods is the subject of Casselman's book. One might be tempted to apply to his text Casselman's own assessment of a work he cites as a reference: "This book is not wildly exciting and does not offer as much variety [as] one might hope for either, but it is still curious." Casselman's title overstates what his book offers, and the subtitle would be more accurate if the "and" were replaced by "with." Despite these shortcomings—or perhaps because of the volume's narrow focus on the illustrations and geometry that PostScript handles best—I recommend it to all who are professionally or even casually interested in mathematical illustration.

This book is a PostScript tutorial that Casselman has been perfecting for a decade and which remains available on his Web site (http://www.math.ubc.ca/~cass/graphics/manual/) by permission of Cambridge University Press. With this manual he teaches courses and workshops. Indeed, to use it profitably the reader should download software extensions from his site. Because the illustrations in the book are fairly plain, it would be a good idea to download and study the code of some more elaborate and excellent student projects found on the site.

On the same site you can obtain Casselman's impressive
"ps3d" package. This PostScript extension handles 3D
geometry in the manner popularized in *Jim Blinn's Corner: A Trip
Down the Graphics Pipeline* (Morgan Kauffman, 1996). The use
of four-dimensional homogeneous coordinates is familiar to the
computer graphics community, which uses the OpenGL or the DirectX
libraries. The mathematical reader will recognize it as the way of
representing the three-dimensional affine group (and thus its
subgroups, the Euclidean and some non-Euclidean isometry groups) in
the four-dimensional linear group. Thus compositions of rigid
motions become matrix multiplications, and even perspective
projection fits conveniently into this scheme.

To read this text profitably requires, in addition to paper and pencil, a computer running a PostScript interpreter such as Ghostscript (to be had for free from the University of Wisconsin, http://www.cs.wisc.edu/~ghost/). Still, for lazy or computerphobic readers there remains close to a third of the book that is superb geometry. These passages can be enjoyed without even a glance at PostScript.

The topics include elementary low-dimensional coordinate changes, Weierstrass-Bernstein-Bézier-de Casteljau splines, stereographic and Mercator map projections, rendering opaque surfaces and triangular subdivision of nonconvex polygons. There are seven very useful appendices.

No book is perfect! This one should be read with two principal caveats: First, anyone at all familiar with the breadth and variety of mathematical illustrations will be puzzled, annoyed even, by its excessively parochial focus. Second, the novice reader will need some help fitting the book into a larger context of the field. Here are samples of what I mean.

Much of the chapter on rendering surfaces is devoted to drawing them back-to-front in the manner called the painter's algorithm. This is only one, tedious way to get the occlusions right. Depth buffering, the nearly universal alternative, is dismissed. On page 237, we read that "Much high-end 3D drawing, for example in video games or movies, relies on a pixel-by-pixel treatment." This ignores three decades of scientific visualization and mathematical animation using ray-tracing and polygon rendering, beginning with Tom Banchoff and Nelson Max through the prizewinning animations at the 1998 International Congress of Mathematics in Berlin.

Casselman erects unnecessary geometrical stumbling blocks with unconventional definitions. Demonstrations of their equivalence with conventional definitions are not even referenced. On page 217, Casselman confuses "surface fragments" with "faces" of polygons, which have very different meanings in OpenGL, the de facto standard. We read that a surface in computer graphics is an "assembly of flat plates, each of which is a 2D polygon." The word "flat" suggests that the "faces," or "patches" (as they are more commonly called), are planar. This is a frequent source of confusion. Although triangular facets are always planar, quadrangles in space generally are not. Casselman uses very special quadrangles for special surfaces. If we use the longitudes and latitudes of surfaces of rotation such as cylinders, cones, spheres and tori, then the quadrangles are planar. Otherwise, quadrangles may have four distinct normal vectors at the vertices and infinitely many of them on the interior, making Casselman's overly technical use of "the" normal function problematic.

On page 216, Casselman mentions Blinn's "allowing not only a change in 3D coordinates but also ways in which the display matrix can be changed to conform to different ways of viewing 3D space." Casselman adds that "In mathematical graphics, this isn't so important as it is in nonmathematical graphics, where one often has to track a moving object." Quite the contrary, this is precisely what we have to do to visualize Bill Thurston's non-Euclidean three-dimensional geometries, preparing for the anticipated confirmation of Grisha Perelman's proof of the celebrated Poincaré Conjecture.

Although Casselman discusses diffuse lighting, he omits mention of specular highlights, materials, textures and so forth. In a book on mathematical illustration, one which shows great deference to Edward Tufte's principles of information graphics, it is disconcerting to find that Casselman's illustrations have no legends and sometimes can't be easily correlated to the text. In an otherwise excellent presentation of Thomas Herriot's elementary proof that stereographic projection is conformal (angle-preserving), the explanatory drawings omit essential labels. The figure at the bottom of page 143 is drawn in such sharp perspective that it is all but impossible to detect parallel and perpendicular lines. Orthographic projection here would have worked better.

Still, I'm glad to have read this book cover to cover. Knowing Charles Moore's Forth, a language similar to PostScript, I was happy to finally understand the differences between the two. Today most images end up in PostScript on the way to the printer, regardless of their origins. Sometimes it becomes necessary to open the arcane code in a text editor and modify PostScript by hand. Even if you will never need to go this far, Casselman's book teaches you to appreciate the marvels of PostScript and of the geometry ideas relevant to this curious computer language.

EMAIL TO A FRIEND :