Other Wise

Inkscape, L-Systems, SVG, Penrose and other tilings

I’ve been playing with the L-System support in Inkscape, generating Penrose Tilings. Damn this is clever neat nifty fun!

Axiom: 
  [N]++[N]++[N]++[N]++[N]
Rules:
  M=OA++pA----NA[-OA----MA]++;
  N=+OA--PA[---MA--NA]+;
  O=-MA++NA[+++OA++PA]-;
  P=--OA++++MA[+PA++++NA]--NA;
  A=
Angle:36

Just drop that into Inkscape/Effect/Render/L-System (put all the rules on one line) and you should get this:

Inkscape-LSystem-PenroseRender.png

Increase the Order value and it will iterate more, drawing a larger graph. Be careful though as execution time grows exponentially as the number of iterations grows.

Inkscape-LSystem-PenroseRender-Big.png

Some other L-system-derived graphs produced with Inkscape:

Axiom:
  f
Rules:
  f=-f+f+g[+f+f]-;
  g=gg;
Angle: 60
LSystem-Hex.png

Or perhaps more entertainingly:

Axiom:
  W
Rules:
  W=+++X--F--ZFX+;
  X=---W++F++YFW-;
  Y=+ZFX--F--Z+++;
  Z=-YFW++F++Y---;
Angle: 30
LSystem-Lace.png

Yes, that’s a single continuous line in what is known as a space filling curve. Wander about Wikipedia or with a search engine and you’ll find many other little L-system programs for other tilings or space filling curves. Plug them in and play! They’re not only a heck of a lot of fun but such curious tilings can easily form the backdrop for interesting games and there are many many such interesting patterns.

Comments   

1 Author:  L-Systems and Penrose P3 in Inkscape | thebrickinthesky | Date:  17 March 2013 | Time:  19:36

[…] Until now, we have deal with systems where there is no overlap, but if you allow it and actually, if you use it, things like this can emerge (Thanks to  J C Lawrence). […]

Write a Comment   

You must be logged in to post a comment. Log in