Математика, 237 байт
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}
Простіша для читання версія:
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}
Рядок 1 визначає функцію, nяка заперечує першу координату впорядкованої пари. Рядок 2 визначає функцію, gяка виробляє (приблизно) рівносторонній трикутник, центрований у точці c, і спрямований вниз або вгору залежно від того, sє 1чи -1. Рядок 3 визначає pяк шаблон паралелограм , що складається з квітів і двох трикутників і ліній 4-6 визначають a, bі cбути три різних типи конкретних паралелограмів , які з'являються в кубах.
Рядок 8 визначає функцію, {a@#, b@#, c@#}&яка малює цілий куб із центром у точці #; рядки 9 і 10 застосовують це до дев'яти точок, необхідних для складання більшого трикутника. При цьому виходить дев'ять кубів, починаючи з правого верхнього кута і йдучи проти годинникової стрілки, де пізніші прикривають частини попередніх. Нарешті, рядок 11 перемальовує чотири паралелограми (у верхньому правому куті малюнка), щоб вони вкривали пізніші кубики так, як вони повинні. Вихід нижче:
