1 computer generated islamic star patterns mustafa shabib based on paper: kaplan, “computer...

18
1 Computer Generated Islamic Star Patterns Mustafa Shabib Based on paper: Kaplan, “Computer Generated Islamic Star Patterns”, Bridges 2000 http://www.cs.washington.ed u/homes/csk/tile/papers/kap

Post on 20-Dec-2015

222 views

Category:

Documents


1 download

TRANSCRIPT

1

Computer Generated Islamic Star Patterns

Mustafa Shabib

Based on paper:Kaplan, “Computer Generated Islamic Star

Patterns”, Bridges 2000http://www.cs.washington.edu/homes/csk/til

e/papers/kaplan_bridges2000.pdf

2

What Are Islamic Star Patterns?Over 1000 years ago, Muslim artists used these patterns as architectural decorationsTypically found on mosques throughout the Islamic worldThey are called “star patterns” since they are most often seen as the division of a plane into star-shaped regionsGeometrically intriguing, as the artists who created them never revealed their techniquesLastly, they look badass as you’re about to see…

3

Mind Boggling Examples

4

Technique UsedStart with a regular n-gonFor n >= 3, let the unit circle be parameterized via:(t) = (cos (2t/n), sin (2t/n))Using a notation (n/d) where d is some number, we can create an n-pointed star based on the original regular n-gon

When d is an integer, we do this by connecting for 0 < i < n the line segment formed from (i) and (i+d)

Certain restrictions apply on the variables mentioned: d < n/2 and when d = 1 it creates the original n-gon

For some values k i, intersects with and so a new term, s, is introduced changing the notation from (n/d) to (n/d)s where we now choose to draw only the first s sub-segments of

5

So That Probably Made Very Little Sense…

6

(n/d)s examples where d is an integer (and in this case n=8)

Good Thing We Have Eyes

7

What if d isn’t an integer?Kaplan is way better at math than I’ll ever be and so he’s generalized this implementation to where d can take on any value, as long as d is between [1, n/2)

Here, a point P is computed as the intersection of line segments (i)(i+d) and (i+ d - d )(i + d )

Then the segment is replaced with two line segments (i)P and P(i + d )

Hopefully, this figure clarifies everything

8

RosettesWhen six-pointed stars are arranged in a certain way, a new pattern emerges: each star is surrounded by a ring of regular hexagons, called rosettes Tiling these rosettes in the plane leave behind gaps, which in the example I’m about to show happen to be more six-pointed stars

9

Rosette Example

10

More On RosettesThe rosette, a central star surrounded by hexagons, appears frequently in Islamic art but is not limited to only six-pointed starsThis implementation has allowed for the construction of the rosette to handle n-pointed stars

11

Rosette Madness! Steps to create these n-fold rosettes

Inscribe a regular n-gon in the unit circle and then another n-gon “tilted” so that its vertices intersect the first n-gon’s edgesLet A and B be adjacent vertices of the outer n-gon and C and D be adjacent vertices of the inner one, where D bisects ABWe then identify point E, which is the intersection of segment CD with the angle bisector of OABNext we get point F which is the intersection of segment OA with the line segment which passes through E and is parallel to ODThese steps are repeated around the n-gon

12

Eh?

13

Filling in the PlaneUsing a periodic tiling of regular polygons across the planeThen irregular polygons are “thrown in” as needed to fill gapsFor each regular n-gon where n>4, we make an n-fold star, rosette or extended rosette to place in it and replicate this motif everywhere that n-gon appears in the tiling. It is placed such that its points bisect the edges of the n-gon

14

Final Steps Where the motif isn’t placed, little gaps are left behindTo fill these gaps, the lines that terminate at the edges are extended until the meet again in the void, and then the original n-gon lines are removed, finishing the design

15

Rendering Styles The output of this construction is a planar graph, which can be rendered in a variety of ways

Plain: line representation of graph edges Outline: lines are thickened and outlines darkened Emboss: 3D effect is added to the lines where center of each edge is raised and one side is

darkened to simulate a light source Interlace: line segments are added at each intersection to suggest an over-under relationship

between the crossing edges, where crossings are chosen so that the “over” and “under” relationship is maintained

Checkerboard: renders only the faces of the graph and not the edges, and where all vertices have an even numbered degree, a 2-coloring of the graph can always be achieved

• Since Checkerboard doesn’t render edges, any of the edge-rendering techniques can be used to overlap the checkerboard pattern, approximating a style called “Zellij”

16

17

18

Demohttp://www.cs.washington.edu/homes/csk/taprats/applet.html