TradeIdeasPhilip / penrose-tiling

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Penrose Tilings

They look so cool. I want to do something with them.

I want to build them outward. The recursive algorithm didn't seem like as much fun. I want to place the tiles one at a time and sometimes I want to see two or more options.

This is similar to some of my past "fun" projects. However, this is harder. There is no grid known in advance. If two pieces meet up perfectly, we need to know that, and round off error will make == useless. If two pieces overlap, we need to call that an error.

Status

The basic algorithm is in place! It's time to add some niceties.

Now that the program finds all forced moves, I am surprised by just how many forced moves there are!

References

I created the following picture from two sources. Wikipedia says these are the only 7 ways that kites and darts can share a vertex. I added the lavender dots to match the pictures in the handout. The word dot in the code refers to vertices that contain a lavender dot. All legal vertices

Tools

This is a VS Code Project. And I've added the Live Server extension to allow me to run the program. (You can't run JavaScript modules or threads without a web server.)

GUI

Whenever I get to the GUI it might look something like this.

GUI

Here's a snapshot of what I have now.

Current

Or try it yourself: https://tradeideasphilip.github.io/penrose-tiling/

About


Languages

Language:HTML 100.0%