algorithmic modeling for Rhino


Script in C# to generate penrose tilings using the substitution method. See this penrose tiling page from university of british columbia for a description of the algorithm.

Output is as a mesh or as polylines forming the quads of the penrose rhombs or a mesh of the generating triangles.

4 options exist for the initial triangle:

0 = use inputMesh drawn in rhino 
1 = fat triangle*scale
2 = thin triangle*scale
3 = fat triangle (very small)
4 = thin triangle (very small)

Views: 5667


You need to be a member of Grasshopper to add comments!

Comment by Madhuri Machchhi on July 1, 2020 at 6:52pm

Hi where can I find the C sharp script?

Can you please share it- I am trying to get the Penrose tiling pattern on a dome-like surface. 

Comment by etsim on January 24, 2020 at 1:19pm

Hi Roly,

looks great,

is it possible to tesselate a cylinder with the penrose tiling?

Comment by bhavin nagda on March 15, 2016 at 5:18am

can you plz help me with offset penrose  like we do it for voronoi  pattern 

thank you 

Comment by roly hudson on January 7, 2016 at 4:53pm


Very nice upgrade, thanks. Roly

Comment by roly hudson on January 7, 2016 at 4:52pm

Hi bhavin

You have to use a triangle mesh to start see the example - also it has very specific proportions for penrose. Check the link to the BC page above.

Comment by bhavin nagda on November 3, 2015 at 11:52am

i am finding it difficult  to generate it on a square mesh , apart from triangle mesh its difficult to generate the pattern 

please help with some solution 

Comment by Elissa Ross on May 28, 2015 at 8:52am

Hey Roly, thanks for this! I modified your script a little to decorate the rhombs with triangles, see here

Comment by Ángel Linares on May 11, 2015 at 2:58am

Awesome and nice implementation!

Comment by mark zirinsky on May 7, 2015 at 9:14pm

Great work Roly. A question: I wanted to take each polyhedron of the tiling pattern and then extrude them, to do that, I need to find opposing pairs and join them into a closed curve. Is there a simple approach to find the 'pairs' that will give a closed curve? 

Comment by emlplsn on May 7, 2015 at 11:24am

Sweet! Wrote a component for Danzer tiling (comparable with penrose in 3d) a while ago. Might also share it soon.





  • Add Photos
  • View All


  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service