Mathematica, 237 bayt
n={-1,1}#&;c_~g~s_:=Polygon[c+s#&/@{k={12,9},m=n@k,t={0,-12}}];p={#,#2~g~1,#3~g~-1}&;a=p[Cyan,#-k,#+m]&;b=p[Blue,#-t,#+k]&;c=p[Red,#-m,#+t]&;Graphics@{{a@#,b@#,c@#}&/@{j=4k,s=4{4,9},n@s,4m,r={-32,8},q=-4{4,5},4t,n@q,n@r},a@j,b@s,c@j,c@s}
Daha kolay okunur sürüm:
1 n = {-1, 1} # &;
2 c_~g~s_ := Polygon[c + s # & /@ {k = {12, 9}, m = n@k, t = {0, -12}}];
3 p = {#, #2~g~1, #3~g~-1} &;
4 a = p[Cyan, # - k, # + m] &;
5 b = p[Blue, # - t, # + k] &;
6 c = p[Red, # - m, # + t] &;
7 Graphics@{
8 {a@#, b@#, c@#} & /@
9 {j = 4 k, s = 4{4, 9}, n@s, 4 m, r = {-32, 8},
10 q = -4{4, 5}, 4 t, n@q, n@r},
11 a@j, b@s, c@j, c@s}
Satır 1, nsipariş edilen bir çiftin ilk koordinatını geçersiz kılan bir işlevi tanımlar . Hat 2 tanımlayan bir işlev gnoktasında merkezlenmiş bir (kabaca) eşkenar üçgen oluşturur cve yere veya olmamasına bağlı olarak yukarı sbir 1ya da -1. Satır 3 tanımlar ptanımlar 4-6 renk ve iki üçgen ve hatlardan oluşan bir paralelkenar şablonu olduğu a, bve cküpler görünür paralel kenar üç farklı özel tipleri için.
Satır 8 {a@#, b@#, c@#}&, noktada merkezlenmiş bir küpün tamamını çizen bir işlevi tanımlar #; 9. ve 10. satırlar bunu daha büyük üçgeni yapmak için gereken dokuz noktaya uygular. Bu, sağ üstte başlayan ve saat yönünün tersine ilerleyen dokuz küp üretir, burada daha sonrakilerin önceki bölümleri kapsar. Son olarak, çizgi 11, dört paralelkenar (resmin sağ üst köşesinde) yeniden çizer, böylece olması gerektiği gibi daha sonraki küpleri kaplarlar. Çıktı aşağıdadır:
