Mathematica, 237 Bytes
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}
Einfacher zu lesende Version:
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}
Zeile 1 definiert eine Funktion n
, die die erste Koordinate eines geordneten Paares negiert. Linie 2 definiert eine Funktion g
, die ein (ungefähr) gleichseitiges Dreieck erzeugt, das am Punkt zentriert c
ist und nach oben oder unten zeigt, je nachdem, ob dies der Fall s
ist 1
oder nicht -1
. Zeile 3 definiert p
eine Parallelogramm Vorlage zu sein , bestehend aus einer Farbe und zwei Dreiecken und Linien 4-6 definieren a
, b
und c
die drei verschiedenen spezifischen Typen von Parallelogrammen zu sein , die in den Würfeln erscheinen.
Linie 8 definiert eine Funktion {a@#, b@#, c@#}&
, die einen ganzen Würfel zeichnet, der am Punkt zentriert ist #
. Die Linien 9 und 10 beziehen sich auf die neun Punkte, die für das größere Dreieck benötigt werden. Dies ergibt neun Würfel, die oben rechts beginnen und gegen den Uhrzeigersinn verlaufen, wobei die späteren Teile der früheren Würfel verdecken. Schließlich werden in Zeile 11 vier Parallelogramme (oben rechts im Bild) neu gezeichnet, sodass sie die späteren Würfel so abdecken, wie sie sollen. Die Ausgabe ist unten: