This course explores a range of topics related to non-photorealistic rendering, together with a healthy dose of my personal research interest in geometric art and design. These topics can be seen as laid out on a continuum, with pragmatic computer graphics algorithms at one end and mathematical theories of geometry, symmetry and tilings at the other. Past offerings of this course have been positioned at different points on this continuum. These days I’m inclined to emulate the breakdown of topics from the Winter 2010 offering, with a rough 60-40 breakdown of mathematics to computer graphics.


Feel free to drop by to chat, though these days I’m often not in my office. Email me to arrange an appointment.


The course is designed for students who are interested in the relationship between computers and design. It is open to undergraduates and graduates in math, with a particular emphasis on CS graduate students. Undergraduates should talk to an advisor about enrolling.

A computer graphics course (such as CS 488/688) is suggested as a prerequisite, but not absolutely required. If you’re not sure about taking the course, come talk to me.

Time and Place

Lectures are held Mondays and Wednesdays, 10:30–11:50, in DC 3313. But: the lecture on Wednesday, June 10th is canceled, and I’ve added an extra lecture on Friday, May 22nd. (I had originally also planned to cancel on July 28th and add a lecture on July 3rd; however, I no longer believe that will be necessary.)


There will be four assignments in this course, each worth 15%. Generally speaking, each assignment will consist primarily of a software implementation task, occasionally complemented by a few mathematical exercises. You will have to use your implementation to create novel result images or illustrations. Assignments will be marked first on correctness, then on the quality of the written report and the artistic merit of the results.

The course will culminate in a final project on a topic of your choosing, worth 30%. I’m pretty open minded about the content and contribution of this project; if you can bend the work to suit your interests, your research, or your work in other courses you’re taking this term, that’s great. The project marks break down further as follows: 5% for a proposal submitted a few weeks before the end of the term, 5% for a presentation given at the end of the term, 14% for the actual content of the project (the research, technical quality, and results), and 6% for the written report.

Participation is worth a final 10%.

You are welcome to work on assignments and projects alone or in pairs.

Projected topics
  • Halftoning
  • Packing and mosaics
  • Geometric textures and element distributions
  • Geometric line art
  • Symmetry theory
  • Celtic knotwork
  • Tiling theory
  • The mathematical structure of M.C. Escher’s art
  • Islamic geometric patterns
  • Non-Euclidean geometry (time permitting)
  • In 2009 I put together a short textbook entitled Introductory Tiling Theory for Computer Graphics. To the extent that this course has an official textbook, I suppose this is it. Note that you can find an electronic copy of the book via the university’s library.
  • The best reference for tiling theory has always been Tilings and Patterns by Grünbaum and Shephard. The book went out of print years ago. There have been persistent murmurings that there will be a new Dover edition soon, but alas nothing concrete.
  • John Conway, Chaim Goodman-Strauss and Heidi Burgiel, The Symmetries of Things. A beautiful and idiosyncratic book that (finally) presents Conway’s “topological” foundation for symmetry theory in terms of orbifolds. Orbifolds offer a completely re-worked and very appealing description of symmetries and patterns.
  • Dorothy Washburn and Don Crowe, Symmetries of Culture. An excellent discussion on the relationship between symmetry, patterns, and the decorative traditions of cultures around the world. Also a good introduction to the history and mathematical foundations of symmetry theory.
  • Thomas Strothotte and Stefan Schlechtweg, Non-photorealistic computer graphics: modeling, rendering, and animation . A good overall textbook on NPR, at least up to 2002. Covers many classic algorithms, but doesn’t have much to say about the current frontier of research.
  • Owen Jones. The Grammar of Ornament (various editions). A classic sourcebook of images of ornament from around the world. I believe Dover has an edition with just the colour plates from the original. Happily, the full version is available online. There are no doubt many other classic pattern books available all over the web. It would be great to collect them here. A good place to watch for pointers is the fun blog BibliOdyssey.
  • Archibald Christie. Traditional Methods of Pattern Designing. Oxford University Press, 1929. A fun look into different classes of patterns and how they evolved. The 1910 version appears to be archived online.
  • Another classic text on types of ornamental patterns and their structure is the 1933 book Pattern Design by Lewis F. Day, also archived online.
  • A more recent book, more about general abstract design than about symmetry or patterns, is Wucius Wong’s Principles of Two-Dimensional Design. This small volume has also been collected into Wong’s more comprehensive Principles of Form and Design.
  • E.H. Gombrich. The Sense of Order: A Study in the Psychology of Decorative Art. Phaidon Press Limited, second edition, 1998. A classic study of art and ornamentaion.