The three Bodhi problem: a self similar trisection of Bodhisattva, a neighborhood terrier-thing.
(c9)
block([debugmode:all],untrace(bodhia),bodhi(1,.001))$
(c15)
block([plot_style:dragstyle],bodhi(8,.001))$
(c16)
dispfun(bodhi,bodhia)$
(e16) bodhi(n, z) := block([faces : bodhia(n), equalscale : true, color_cycles : 0.5, color_normalize : true, %emode : true], length(faces), for j thru %% do (for i thru length(faces[j]) do (faces[j])[i] : endcons(z * floor(((3 * (j - 1))/(%%))), rectformlist((faces[j])[i]))), plotfaces(faces))
(e17) bodhia(n) := if n = 0 then [[0.0, - 0.86602 * %i - 1.5, - 1.73205
* %i, 1.5 - 0.86602 * %i]] else (expand(0.57735 * (0.5 * %i + 0.86602) *
bodhia(n - 1)*^),
append(%% + 0.5 - 0.86602 * %i, - %% - (0.86602 * %i + 0.5), expand((%% -
1) * (0.86602 * %i + 0.5))))