This Demonstration shows a "graftal" technique to subdivide the triangular faces of a polyhedron.

Many fractal curves can be generated using L-systems or string-rewrite rules, in which successive stages of the curve are generated by replacing each line segment with multiple smaller segments in a particular arrangement.

The same technique can be extended to surfaces, where a stage is constructed by replacing each triangle with multiple smaller triangles. Here we apply this technique to two of the regular polyhedra with triangular faces.

Each successive stage is created by dividing each triangle into four smaller triangles, raising the midpoint of the middle triangle, and then closing the surface by building a tetrahedron-shaped shell on the middle triangle. The first iteration on the tetrahedron is Kepler's stella octangula, which is the compound of the tetrahedron and its dual.