CS798 - Ornamental Design, Geometry and Computer Graphics
This course, also known as "Craig's Thesis : The Course" (Craig Kaplan being the prof for the course), looks at ornamental design and its mathematical meaning, as implemented by real people. ie. Graphics programmers.
Each of the assignments has a programming component, which is so much fun, that I'd like to share what I worked on here. The website for the course can be found here.
Assignment 1
This assignment dealt with symmetry groups. The programming component dealt with celtic knotwork. Given a file containing grid size, and location of break markers, we were required to process the file and output a postscript file of the knotwork associated with such a grid and it's break markers. I quickly realized, while handling the sample input files, that I wanted to create a GUI to make working with the knotwork easier.
Assignment 2
This assignment - which turned out to be much more time intensive than the instructor expected - was the generation of the 44 isohedral tilings. An interactive user interface was required such that it could modify the constrained edges to produce all possible tilings. My extension to this assignment wasn't so much a single extension, as a variety of smaller extensions: the ability to select what colours on the two-coloured tiling, the ability to interactive choose which tiling to work on, the ability to directly modify edges without requiring a separate interactive viewer.
Assignment 3
(Note: not up yet) This assignment has to do with Islamic Star Patterns - namely, the point-in-contact method of generating Islamic Star Patterns. Given a file containing the initial tiling types, translation matrices, and vertices of the various polygons, generate the star patterns, such that the incidence angle may be varied. The extension I generated for this was the translation from a 2D plane, onto star patterns on 3D polyhedra.
Final Project
This project involves the modeling of Roullette curves in spherical geometry, which are then transformed into egg-space coordinates. The idea is to be able to model the Guilloche techniques on Faberge eggs.