I am trying to create subdivision tilings inspired by the work of Brian Rushton (eg. page 77 of this paper). The challenge is to subdivide tiles according to a certain rule, and then apply this rule recursively to the result.
For example, a square might be subdivided by this rule which splits it into 5 more quadrilaterals. Each of these must then be subdivided again by the same rule, but since the tiles to subdivide are no longer square, a mapping function must be applied to find the vertex positions of the child tiles. What is the best mapping function to use? Here is an illustration of what I mean.
I think the definition of best is:
- Vertices on the edges of the un-mapped tile end up on the edge of the mapped tile.
- All vertices stay within the parent tile.
- The appearance of the child tiles are distorted as little as possible.
I am developing a web app that makes this process interactive which is here, and you can try out the two functions that I have explored so far, but they both have issues. If you would like to experiment or contribute the source code is on github here!