Taprats: Computer-Generated Islamic Star Patterns


 
  Jump right to the applet!   
 
  Table of Contents 

Introduction
The Applet
The Application
Documentation
Updates
More Information
Source Code
 
 
  Introduction   
 
A sample Islamic pattern Over a thousand years ago, artisans in the Islamic world began to develop a system for constructing intricate geometric art based on radially symmetric starlike figures. As the centuries progressed, they raised this practice into a high art form, adorning architectural surfaces with colourful symmetric patterns (like the one on the left) of limitless variety. The genre's masterpiece is surely the Alhambra palace in Granada, Spain.

The era of building great bejewelled palaces is behind us, and with its passing went the craftsmen who designed these beautiful motifs. The techniques were closely guarded secrets that have not been handed down to the present day. Thus, we are forced to re-engineer the original design techniques from what clues survive. Many different systems have been hypothesized in modern times. What's weird is that most of them work, even though they're all so different. In truth, we can't know for sure how the Islamic artisans figured out these designs. But we can invent systems to create designs similar to theirs. And revel in the exploration.

Taprats is a Java applet that implements one such design technique for Islamic star patterns. The technique is based largely on the work of Hankin in the early part of the twentieth century, and on a more recent paper by A.J. Lee (see More Information for complete citations). The sequence of figures above illustrates the process. In a nutshell, we start with a tiling of plane made up at least in part of regular polygons. The polygons are filled with radially symmetric motifs like those found in the Islamic tradition. The tiles forming the gaps between the regular polygons are then filled in by finding natural extensions of the lines meeting their boundaries. The result is a network of lines that has nice graph-theoretic properties. The graph structure enables it to be coloured in various ways, or even rendered as a weave, or interlacing, as were many of the original designs.

Taprats has a library of built-in tilings that can be used to construct many famous Islamic designs. Even better, the construction of these designs is parameterized in certain ways, so you can use Taprats as a vehicle for exploration of the vast space of Islamic designs.

The research that went into this applet appeared in print in the proceedings of the third annual Bridges conference at Southwestern College in Kansas. You can read the paper online as part of the Bridges issue of the journal Visual Mathematics. You can also view a PDF of the paper as it appeared in the Bridges proceedings.

 
 
  The Applet   
 
Click here to start Taprats. The preceding link will launch the applet in a separate window so that you can continue to browse the documentation. Note that it uses JavaScript; if the link doesn't work for you, try this one instead. Taprats is a JDK 1.1 applet -- it should run on the native VM in recent incarnations of Netscape or IE.

In an ideal world, 100% pure Java code should run the same on any platform with a compatible VM. That is of course not the case in our world. If you're experiencing unexpected or strange behaviour with Taprats, it might be a compatibility problem (of course, it's more likely a silly bug, but I don't mind if you blame the platform...) I've tested Taprats on a variety of platforms. The platform document lists what platforms Taprats has been tested on and what to expect.

 
 
  The Application (new!)   
 
Many people who have found and enjoyed Taprats have asked for the application version. They would like to be to able to print their designs -- a very reasonable request! Please understand that the point of the applet version was not to be a full application. It was just a demonstration of star pattern construction, a tool to let you explore. There was never any need to make the applet fancier than it is.

That being said, I have created a newer application version that does have a limited about of loading, saving, and printing functionality. You can load and save designs, and you can export them as encapsulated postscript (EPS) files. You'll either need a postscript printer or a tool that can import postscript (such as Adobe Illustrator) to print them.

The application version of Taprats is available free for non-commercial uses. You can play with it, do research with it, use it for school projects, but you can't use it in a commercial setting. Please contact me if you need more information on this point.

If you're interested in downloading the application version of Taprats, please proceed to this page to read the license. That page will have a button to take you to yet another page where you can download the distribution. Yes, it's a little roundabout. That's why I do research in graphics and not e-commerce.

 
 
  Documentation   
 
User's Manual
Everything you wanted to know about how to use Taprats to create your own Islamic designs!

Design Notes
Some notes about how Taprats was designed, how it was written and why some of the decisions were made.

Architecture Guide
A brief guide to the layout of the Taprats code and conceptual structure.

Gallery
A gallery (with large, slow-loading images) of some of the results I've created using Taprats.
 
 
  Updates   
 
13 July 2002
  • There is a long-standing bug in the application version of Taprats having to do with the way it generates encapsulated postscript. It turns out that it generates %%BoundingBox declarations that are technically nonstandard (they contain negative numbers). It also neglects to put a showpage at the end of the file. I thought I had fixed it, but I hadn't. I didn't really notice the problem because Linux ghostview handles my bad postscript gracefully.

    So I apologize if you're using the application version and having postscript problems. I'll fix this when I can, but I'm currently busy with my dissertation, so I can't promise that it'll be any time soon.

17 December 2001
  • Added a simple CGI-based downloader for the application distribution and linked to it from this page. Happy downloading!
7 December 2001
  • Added the "The Application" section as a preliminary step towards offering the new downloadable application version of Taprats.
30 June 2000
  • Added this "updates" section to the taprats web page
  • Fixed a glitch in the HTML for the user's manual
  • Fixed a problem with the Java code for the Geometry View Test tutorial: the applet class wasn't a subclass of java.applet.Applet as it should be. Mysteriously, this test still worked on some platforms.
 
 
  More Information   
 
There are many sources of information that inform the study of Islamic designs. Some lean more towards the mathematics of tilings. Some are more interested in the artistic or even spiritual and cosmological implications of the patterns. Here are some of the sources of information I use in my pursuit of this subject.

Books
Syed Jan Abas and Amer Shaker Salman. Symmetries of Islamic Geomertical Patterns. World Scientificm, 1995.

J. Bourgoin. Arabic Geometric Pattern and Design. Dover Publications, 1973.

Jean-Marc Castera et al. Arabesques: Decorative Art in Morocco. ACR Edition, 1999.

Branko Grünbaum and G.C. Shephard. Tilings and Patterns. W.H. Freeman, 1987.

Papers
Jean-Marc Castera. Zellijs, muqarnas and quasicrystals. In Nathaniel Friedman and Javar Barrallo, editors, ISAMA 99 Proceedings, pages 99-104, 1999.

Branko Grünbaum and G.C. Shephard. Interlace patterns in islamic and moorish art. Leonardo, 25:331-339, 1992.

E.H. Hankin, Memoirs of the Archaeological Societry of India, volume 15. Government of India, 1925.

A.J. Lee. Islamic Star Patterns. Muqarnas, 4:182-197, 1995.

Links
Tesselation Resources at the Geometry Center.

The Geometry Junkyard's Tiling page.

Totally Tesselated

Sakkal Design Mamoun Sakkal is the person who taught the course in which I first began this research.

Syed Jan Abas's gallery of Islamic art.

 
 
  Source Code   
 
The source code is available for download as a tarred gzipped file.

The source code can also be browsed online starting from this directory.


Last modified: by
Craig S. Kaplan