% Copyright 2018 by Till Tantau % Copyright 2018 by Nico Van Cleemput % % This file may be distributed and/or modified % % 1. under the LaTeX Project Public License and/or % 2. under the GNU Public License. % % See the file doc/generic/pgf/licenses/LICENSE for more details. \ProvidesFileRCS{tikzlibraryfolding.code.tex} % % Length of a standard line in a folding % \tikzoption{folding line length}{\pgfmathsetlength\tikz@lib@fold@length{#1}}% \newdimen\tikz@lib@fold@length \tikz@lib@fold@length=2cm % Faces % ----- \def\tikz@lib@fold@triangle#1#2#3#4{% \scope[xshift=.5\tikz@lib@fold@length,yshift=.28868\tikz@lib@fold@length] #1 \endscope \scope[shift={(60:\tikz@lib@fold@length)},rotate=-60] #2 \endscope \scope[xshift=\tikz@lib@fold@length,rotate=180] #3 \endscope \scope[rotate=60] #4 \endscope }% \def\tikz@lib@fold@square#1#2#3#4#5{% \scope[xshift=.5\tikz@lib@fold@length,yshift=.5\tikz@lib@fold@length] #1 \endscope \scope[yshift=\tikz@lib@fold@length] #2 \endscope \scope[xshift=\tikz@lib@fold@length,yshift=\tikz@lib@fold@length,rotate=-90] #3 \endscope \scope[xshift=\tikz@lib@fold@length,rotate=180] #4 \endscope \scope[rotate=90] #5 \endscope }% \def\tikz@lib@fold@pentagon#1#2#3#4#5#6{% \scope[xshift=.5\tikz@lib@fold@length,yshift=0.68819\tikz@lib@fold@length] #1 \endscope \scope[shift={(108:\tikz@lib@fold@length)},shift={(36:\tikz@lib@fold@length)},rotate=-36] #2 \endscope \scope[xshift=\tikz@lib@fold@length,shift={(72:\tikz@lib@fold@length)},rotate=-108] #3 \endscope \scope[xshift=\tikz@lib@fold@length,rotate=180] #4 \endscope \scope[rotate=108] #5 \endscope \scope[shift={(108:\tikz@lib@fold@length)},rotate=36] #6 \endscope }% \def\tikz@lib@fold@hexagon#1#2#3#4#5#6#7{% \scope [shift={(60:\tikz@lib@fold@length)}] #1 \endscope \scope [shift={(120:\tikz@lib@fold@length)}, shift={(60:\tikz@lib@fold@length)}] #2 \endscope \scope [shift={(120:\tikz@lib@fold@length)}, shift={(60:\tikz@lib@fold@length)}, xshift=\tikz@lib@fold@length, rotate=-60] #3 \endscope \scope [xshift=\tikz@lib@fold@length, shift={(60:\tikz@lib@fold@length)}, rotate=-120] #4 \endscope \scope [xshift=\tikz@lib@fold@length, rotate=180] #5 \endscope \scope [rotate=120] #6 \endscope \scope [shift={(120:\tikz@lib@fold@length)}, rotate=60] #7 \endscope }% \def\tikz@lib@fold@octagon#1#2#3#4#5#6#7#8#9{% \scope[xshift=.5\tikz@lib@fold@length,yshift=1.20711\tikz@lib@fold@length] #1 \endscope \scope[yshift=2.41421\tikz@lib@fold@length] #2 \endscope \scope[xshift=\tikz@lib@fold@length,yshift=2.41421\tikz@lib@fold@length,rotate=-45] #3 \endscope \scope[xshift=1.70711\tikz@lib@fold@length,yshift=1.70711\tikz@lib@fold@length,rotate=-90] #4 \endscope \scope[xshift=1.70711\tikz@lib@fold@length,yshift=.70711\tikz@lib@fold@length,rotate=-135] #5 \endscope \scope[xshift=\tikz@lib@fold@length,rotate=180] #6 \endscope \scope[rotate=135] #7 \endscope \scope[xshift=-.70711\tikz@lib@fold@length,yshift=.70711\tikz@lib@fold@length,rotate=90] #8 \endscope \scope[xshift=-.70711\tikz@lib@fold@length,yshift=1.70711\tikz@lib@fold@length,rotate=45] #9 \endscope }% \def\tikz@lib@fold@decagon#1#2#3#4#5#6#7{% \scope[shift={(72:1.61803\tikz@lib@fold@length)}] %decagon inside a circle with radius the golden ratio has side length 1 #1 \endscope \scope [shift={(36:\tikz@lib@fold@length)}, shift={(72:\tikz@lib@fold@length)}, shift={(108:\tikz@lib@fold@length)}, shift={(144:\tikz@lib@fold@length)}] #2 \endscope \scope [xshift=\tikz@lib@fold@length, shift={(36:\tikz@lib@fold@length)}, shift={(72:\tikz@lib@fold@length)}, shift={(108:\tikz@lib@fold@length)}, shift={(144:\tikz@lib@fold@length)}, rotate=-36] #3 \endscope \scope [xshift=\tikz@lib@fold@length, shift={(36:\tikz@lib@fold@length)}, shift={(72:\tikz@lib@fold@length)}, shift={(108:\tikz@lib@fold@length)}, rotate=-72] #4 \endscope \scope [xshift=\tikz@lib@fold@length, shift={(36:\tikz@lib@fold@length)}, shift={(72:\tikz@lib@fold@length)}, rotate=-108] #5 \endscope \scope [xshift=\tikz@lib@fold@length, shift={(36:\tikz@lib@fold@length)}, rotate=-144] #6 \endscope \scope [xshift=\tikz@lib@fold@length, rotate=180] #7 \endscope \tikz@lib@fold@decagonbis }% \def\tikz@lib@fold@decagonbis#1#2#3#4{% \scope [rotate=144] #1 \endscope \scope [shift={(144:\tikz@lib@fold@length)}, rotate=108] #2 \endscope \scope [shift={(144:\tikz@lib@fold@length)}, shift={(108:\tikz@lib@fold@length)}, rotate=72] #3 \endscope \scope [shift={(144:\tikz@lib@fold@length)}, shift={(108:\tikz@lib@fold@length)}, shift={(72:\tikz@lib@fold@length)}, rotate=36] #4 \endscope }% \def\tikz@lib@fold@path{\draw[every fold](0,0) -- (\tikz@lib@fold@length,0pt);}% \def\tikz@lib@fold@cut@path{\draw[every cut](0,0) -- (\tikz@lib@fold@length,0pt);}% \def\tikz@lib@fold@ear@path{ \path[every ear] (0,0) -- (.5\tikz@lib@fold@length,.2\tikz@lib@fold@length) --(\tikz@lib@fold@length,0pt) --(0,0) -- cycle; \draw[every fold](0,0) -- (\tikz@lib@fold@length,0pt); \draw[every cut] (0,0) -- (.5\tikz@lib@fold@length,.2\tikz@lib@fold@length) --(\tikz@lib@fold@length,0pt);}% \def\tikz@lib@fold@ear@custom@left@path#1{ \path[every ear] (0,0) -- (#1:.66\tikz@lib@fold@length) -- (\tikz@lib@fold@length,0pt) --(0,0) -- cycle; \draw[every fold](0,0) -- (\tikz@lib@fold@length,0pt); \draw[every cut] (0,0) -- (#1:.66\tikz@lib@fold@length) -- (\tikz@lib@fold@length,0pt);}% \def\tikz@lib@fold@ear@custom@right@path#1{ \path[every ear] (0,0) -- (\tikz@lib@fold@length,0pt) -- ++(-#1:-.66\tikz@lib@fold@length) --(0,0) -- cycle; \draw[every fold](0,0) -- (\tikz@lib@fold@length,0pt); \draw[every cut] (\tikz@lib@fold@length,0pt) -- ++(-#1:-.66\tikz@lib@fold@length) -- (0,0);}% \tikzset{every ear/.style={}}% \tikzset{every cut/.style={}}% \tikzset{every fold/.style={help lines}}% \tikzoption{face 1}{\def\tikz@lib@fold@face@A{#1}}% \tikzoption{face 2}{\def\tikz@lib@fold@face@B{#1}}% \tikzoption{face 3}{\def\tikz@lib@fold@face@C{#1}}% \tikzoption{face 4}{\def\tikz@lib@fold@face@D{#1}}% \tikzoption{face 5}{\def\tikz@lib@fold@face@E{#1}}% \tikzoption{face 6}{\def\tikz@lib@fold@face@F{#1}}% \tikzoption{face 7}{\def\tikz@lib@fold@face@G{#1}}% \tikzoption{face 8}{\def\tikz@lib@fold@face@H{#1}}% \tikzoption{face 9}{\def\tikz@lib@fold@face@I{#1}}% \tikzoption{face 10}{\def\tikz@lib@fold@face@J{#1}}% \tikzoption{face 11}{\def\tikz@lib@fold@face@K{#1}}% \tikzoption{face 12}{\def\tikz@lib@fold@face@L{#1}}% \tikzoption{face 13}{\def\tikz@lib@fold@face@M{#1}}% \tikzoption{face 14}{\def\tikz@lib@fold@face@N{#1}}% \tikzoption{face 15}{\def\tikz@lib@fold@face@O{#1}}% \tikzoption{face 16}{\def\tikz@lib@fold@face@P{#1}}% \tikzoption{face 17}{\def\tikz@lib@fold@face@Q{#1}}% \tikzoption{face 18}{\def\tikz@lib@fold@face@R{#1}}% \tikzoption{face 19}{\def\tikz@lib@fold@face@S{#1}}% \tikzoption{face 20}{\def\tikz@lib@fold@face@T{#1}}% \tikzoption{face 21}{\def\tikz@lib@fold@face@U{#1}}% \tikzoption{face 22}{\def\tikz@lib@fold@face@V{#1}}% \tikzoption{face 23}{\def\tikz@lib@fold@face@W{#1}}% \tikzoption{face 24}{\def\tikz@lib@fold@face@X{#1}}% \tikzoption{face 25}{\def\tikz@lib@fold@face@Y{#1}}% \tikzoption{face 26}{\def\tikz@lib@fold@face@Z{#1}}% \tikzoption{face 27}{\def\tikz@lib@fold@face@AA{#1}}% \tikzoption{face 28}{\def\tikz@lib@fold@face@AB{#1}}% \tikzoption{face 29}{\def\tikz@lib@fold@face@AC{#1}}% \tikzoption{face 30}{\def\tikz@lib@fold@face@AD{#1}}% \tikzoption{face 31}{\def\tikz@lib@fold@face@AE{#1}}% \tikzoption{face 32}{\def\tikz@lib@fold@face@AF{#1}}% \tikzoption{face 33}{\def\tikz@lib@fold@face@AG{#1}}% \tikzoption{face 34}{\def\tikz@lib@fold@face@AH{#1}}% \tikzoption{face 35}{\def\tikz@lib@fold@face@AI{#1}}% \tikzoption{face 36}{\def\tikz@lib@fold@face@AJ{#1}}% \tikzoption{face 37}{\def\tikz@lib@fold@face@AK{#1}}% \tikzoption{face 38}{\def\tikz@lib@fold@face@AL{#1}}% \tikzoption{face 39}{\def\tikz@lib@fold@face@AM{#1}}% \tikzoption{face 40}{\def\tikz@lib@fold@face@AN{#1}}% \tikzoption{face 41}{\def\tikz@lib@fold@face@AO{#1}}% \tikzoption{face 42}{\def\tikz@lib@fold@face@AP{#1}}% \tikzoption{face 43}{\def\tikz@lib@fold@face@AQ{#1}}% \tikzoption{face 44}{\def\tikz@lib@fold@face@AR{#1}}% \tikzoption{face 45}{\def\tikz@lib@fold@face@AS{#1}}% \tikzoption{face 46}{\def\tikz@lib@fold@face@AT{#1}}% \tikzoption{face 47}{\def\tikz@lib@fold@face@AU{#1}}% \tikzoption{face 48}{\def\tikz@lib@fold@face@AV{#1}}% \tikzoption{face 49}{\def\tikz@lib@fold@face@AW{#1}}% \tikzoption{face 50}{\def\tikz@lib@fold@face@AX{#1}}% \tikzoption{face 51}{\def\tikz@lib@fold@face@AY{#1}}% \tikzoption{face 52}{\def\tikz@lib@fold@face@AZ{#1}}% \tikzoption{face 53}{\def\tikz@lib@fold@face@BA{#1}}% \tikzoption{face 54}{\def\tikz@lib@fold@face@BB{#1}}% \tikzoption{face 55}{\def\tikz@lib@fold@face@BC{#1}}% \tikzoption{face 56}{\def\tikz@lib@fold@face@BD{#1}}% \tikzoption{face 57}{\def\tikz@lib@fold@face@BE{#1}}% \tikzoption{face 58}{\def\tikz@lib@fold@face@BF{#1}}% \tikzoption{face 59}{\def\tikz@lib@fold@face@BG{#1}}% \tikzoption{face 60}{\def\tikz@lib@fold@face@BH{#1}}% \tikzoption{face 61}{\def\tikz@lib@fold@face@BI{#1}}% \tikzoption{face 62}{\def\tikz@lib@fold@face@BJ{#1}}% \tikzoption{face 63}{\def\tikz@lib@fold@face@BK{#1}}% \tikzoption{face 64}{\def\tikz@lib@fold@face@BL{#1}}% \tikzoption{face 65}{\def\tikz@lib@fold@face@BM{#1}}% \tikzoption{face 66}{\def\tikz@lib@fold@face@BN{#1}}% \tikzoption{face 67}{\def\tikz@lib@fold@face@BO{#1}}% \tikzoption{face 68}{\def\tikz@lib@fold@face@BP{#1}}% \tikzoption{face 69}{\def\tikz@lib@fold@face@BQ{#1}}% \tikzoption{face 70}{\def\tikz@lib@fold@face@BR{#1}}% \tikzoption{face 71}{\def\tikz@lib@fold@face@BS{#1}}% \tikzoption{face 72}{\def\tikz@lib@fold@face@BT{#1}}% \tikzoption{face 73}{\def\tikz@lib@fold@face@BU{#1}}% \tikzoption{face 74}{\def\tikz@lib@fold@face@BV{#1}}% \tikzoption{face 75}{\def\tikz@lib@fold@face@BW{#1}}% \tikzoption{face 76}{\def\tikz@lib@fold@face@BX{#1}}% \tikzoption{face 77}{\def\tikz@lib@fold@face@BY{#1}}% \tikzoption{face 78}{\def\tikz@lib@fold@face@BZ{#1}}% \tikzoption{face 79}{\def\tikz@lib@fold@face@CA{#1}}% \tikzoption{face 80}{\def\tikz@lib@fold@face@CB{#1}}% \tikzoption{face 81}{\def\tikz@lib@fold@face@CC{#1}}% \tikzoption{face 82}{\def\tikz@lib@fold@face@CD{#1}}% \tikzoption{face 83}{\def\tikz@lib@fold@face@CE{#1}}% \tikzoption{face 84}{\def\tikz@lib@fold@face@CF{#1}}% \tikzoption{face 85}{\def\tikz@lib@fold@face@CG{#1}}% \tikzoption{face 86}{\def\tikz@lib@fold@face@CH{#1}}% \tikzoption{face 87}{\def\tikz@lib@fold@face@CI{#1}}% \tikzoption{face 88}{\def\tikz@lib@fold@face@CJ{#1}}% \tikzoption{face 89}{\def\tikz@lib@fold@face@CK{#1}}% \tikzoption{face 90}{\def\tikz@lib@fold@face@CL{#1}}% \tikzoption{face 91}{\def\tikz@lib@fold@face@CM{#1}}% \tikzoption{face 92}{\def\tikz@lib@fold@face@CN{#1}}% \let\tikz@lib@fold@face@A=\pgfutil@empty \let\tikz@lib@fold@face@B=\pgfutil@empty \let\tikz@lib@fold@face@C=\pgfutil@empty \let\tikz@lib@fold@face@D=\pgfutil@empty \let\tikz@lib@fold@face@E=\pgfutil@empty \let\tikz@lib@fold@face@F=\pgfutil@empty \let\tikz@lib@fold@face@G=\pgfutil@empty \let\tikz@lib@fold@face@H=\pgfutil@empty \let\tikz@lib@fold@face@I=\pgfutil@empty \let\tikz@lib@fold@face@J=\pgfutil@empty \let\tikz@lib@fold@face@K=\pgfutil@empty \let\tikz@lib@fold@face@L=\pgfutil@empty \let\tikz@lib@fold@face@M=\pgfutil@empty \let\tikz@lib@fold@face@N=\pgfutil@empty \let\tikz@lib@fold@face@O=\pgfutil@empty \let\tikz@lib@fold@face@P=\pgfutil@empty \let\tikz@lib@fold@face@Q=\pgfutil@empty \let\tikz@lib@fold@face@R=\pgfutil@empty \let\tikz@lib@fold@face@S=\pgfutil@empty \let\tikz@lib@fold@face@T=\pgfutil@empty \let\tikz@lib@fold@face@U=\pgfutil@empty \let\tikz@lib@fold@face@V=\pgfutil@empty \let\tikz@lib@fold@face@W=\pgfutil@empty \let\tikz@lib@fold@face@X=\pgfutil@empty \let\tikz@lib@fold@face@Y=\pgfutil@empty \let\tikz@lib@fold@face@Z=\pgfutil@empty \let\tikz@lib@fold@face@AA=\pgfutil@empty \let\tikz@lib@fold@face@AB=\pgfutil@empty \let\tikz@lib@fold@face@AC=\pgfutil@empty \let\tikz@lib@fold@face@AD=\pgfutil@empty \let\tikz@lib@fold@face@AE=\pgfutil@empty \let\tikz@lib@fold@face@AF=\pgfutil@empty \let\tikz@lib@fold@face@AG=\pgfutil@empty \let\tikz@lib@fold@face@AH=\pgfutil@empty \let\tikz@lib@fold@face@AI=\pgfutil@empty \let\tikz@lib@fold@face@AJ=\pgfutil@empty \let\tikz@lib@fold@face@AK=\pgfutil@empty \let\tikz@lib@fold@face@AL=\pgfutil@empty \let\tikz@lib@fold@face@AM=\pgfutil@empty \let\tikz@lib@fold@face@AN=\pgfutil@empty \let\tikz@lib@fold@face@AO=\pgfutil@empty \let\tikz@lib@fold@face@AP=\pgfutil@empty \let\tikz@lib@fold@face@AQ=\pgfutil@empty \let\tikz@lib@fold@face@AR=\pgfutil@empty \let\tikz@lib@fold@face@AS=\pgfutil@empty \let\tikz@lib@fold@face@AT=\pgfutil@empty \let\tikz@lib@fold@face@AU=\pgfutil@empty \let\tikz@lib@fold@face@AV=\pgfutil@empty \let\tikz@lib@fold@face@AW=\pgfutil@empty \let\tikz@lib@fold@face@AX=\pgfutil@empty \let\tikz@lib@fold@face@AY=\pgfutil@empty \let\tikz@lib@fold@face@AZ=\pgfutil@empty \let\tikz@lib@fold@face@BA=\pgfutil@empty \let\tikz@lib@fold@face@BB=\pgfutil@empty \let\tikz@lib@fold@face@BC=\pgfutil@empty \let\tikz@lib@fold@face@BD=\pgfutil@empty \let\tikz@lib@fold@face@BE=\pgfutil@empty \let\tikz@lib@fold@face@BF=\pgfutil@empty \let\tikz@lib@fold@face@BG=\pgfutil@empty \let\tikz@lib@fold@face@BH=\pgfutil@empty \let\tikz@lib@fold@face@BI=\pgfutil@empty \let\tikz@lib@fold@face@BJ=\pgfutil@empty \let\tikz@lib@fold@face@BK=\pgfutil@empty \let\tikz@lib@fold@face@BL=\pgfutil@empty \let\tikz@lib@fold@face@BM=\pgfutil@empty \let\tikz@lib@fold@face@BN=\pgfutil@empty \let\tikz@lib@fold@face@BO=\pgfutil@empty \let\tikz@lib@fold@face@BP=\pgfutil@empty \let\tikz@lib@fold@face@BQ=\pgfutil@empty \let\tikz@lib@fold@face@BR=\pgfutil@empty \let\tikz@lib@fold@face@BS=\pgfutil@empty \let\tikz@lib@fold@face@BT=\pgfutil@empty \let\tikz@lib@fold@face@BU=\pgfutil@empty \let\tikz@lib@fold@face@BV=\pgfutil@empty \let\tikz@lib@fold@face@BW=\pgfutil@empty \let\tikz@lib@fold@face@BX=\pgfutil@empty \let\tikz@lib@fold@face@BY=\pgfutil@empty \let\tikz@lib@fold@face@BZ=\pgfutil@empty \let\tikz@lib@fold@face@CA=\pgfutil@empty \let\tikz@lib@fold@face@CB=\pgfutil@empty \let\tikz@lib@fold@face@CC=\pgfutil@empty \let\tikz@lib@fold@face@CD=\pgfutil@empty \let\tikz@lib@fold@face@CE=\pgfutil@empty \let\tikz@lib@fold@face@CF=\pgfutil@empty \let\tikz@lib@fold@face@CG=\pgfutil@empty \let\tikz@lib@fold@face@CH=\pgfutil@empty \let\tikz@lib@fold@face@CI=\pgfutil@empty \let\tikz@lib@fold@face@CJ=\pgfutil@empty \let\tikz@lib@fold@face@CK=\pgfutil@empty \let\tikz@lib@fold@face@CL=\pgfutil@empty \let\tikz@lib@fold@face@CM=\pgfutil@empty \let\tikz@lib@fold@face@CN=\pgfutil@empty \tikzset{numbered faces/.style={% face 1={\node{1};}, face 2={\node{2};}, face 3={\node{3};}, face 4={\node{4};}, face 5={\node{5};}, face 6={\node{6};}, face 7={\node{7};}, face 8={\node{8};}, face 9={\node{9};}, face 10={\node{10};}, face 11={\node{11};}, face 12={\node{12};}, face 13={\node{13};}, face 14={\node{14};}, face 15={\node{15};}, face 16={\node{16};}, face 17={\node{17};}, face 18={\node{18};}, face 19={\node{19};}, face 20={\node{20};}, face 21={\node{21};}, face 22={\node{22};}, face 23={\node{23};}, face 24={\node{24};}, face 25={\node{25};}, face 26={\node{26};}, face 27={\node{27};}, face 28={\node{28};}, face 29={\node{29};}, face 30={\node{30};}, face 31={\node{31};}, face 32={\node{32};}, face 33={\node{33};}, face 34={\node{34};}, face 35={\node{35};}, face 36={\node{36};}, face 37={\node{37};}, face 38={\node{38};}, face 39={\node{39};}, face 40={\node{40};}, face 41={\node{41};}, face 42={\node{42};}, face 43={\node{43};}, face 44={\node{44};}, face 45={\node{45};}, face 46={\node{46};}, face 47={\node{47};}, face 48={\node{48};}, face 49={\node{49};}, face 50={\node{50};}, face 51={\node{51};}, face 52={\node{52};}, face 53={\node{53};}, face 54={\node{54};}, face 55={\node{55};}, face 56={\node{56};}, face 57={\node{57};}, face 58={\node{58};}, face 59={\node{59};}, face 60={\node{60};}, face 61={\node{61};}, face 62={\node{62};}, face 63={\node{63};}, face 64={\node{64};}, face 65={\node{65};}, face 66={\node{66};}, face 67={\node{67};}, face 68={\node{68};}, face 69={\node{69};}, face 70={\node{70};}, face 71={\node{71};}, face 72={\node{72};}, face 73={\node{73};}, face 74={\node{74};}, face 75={\node{75};}, face 76={\node{76};}, face 77={\node{77};}, face 78={\node{78};}, face 79={\node{79};}, face 80={\node{80};}, face 81={\node{81};}, face 82={\node{82};}, face 83={\node{83};}, face 84={\node{84};}, face 85={\node{85};}, face 86={\node{86};}, face 87={\node{87};}, face 88={\node{88};}, face 89={\node{89};}, face 90={\node{90};}, face 91={\node{91};}, face 92={\node{92};}}}% % The foldings defined here: \tikzset{ pics/dodecahedron folding/.style = {code=\tikzfoldingdodecahedron[];}, pics/tetrahedron folding/.style = {code=\tikzfoldingtetrahedron[];}, pics/tetrahedron truncated folding/.style = {code=\tikzfoldingtruncatedtetrahedron[];}, pics/cube folding/.style = {code=\tikzfoldingcube[];}, pics/cube truncated folding/.style = {code=\tikzfoldingtruncatedcube[];}, pics/octahedron folding/.style = {code=\tikzfoldingoctahedron[];}, pics/octahedron truncated folding/.style = {code=\tikzfoldingtruncatedoctahedron[];}, pics/dodecahedron folding/.style = {code=\tikzfoldingdodecahedron[];}, pics/dodecahedron' folding/.style = {code=\tikzfoldingalternatedodecahedron[];}, pics/cuboctahedron folding/.style = {code=\tikzfoldingcuboctahedron[];}, pics/cuboctahedron truncated folding/.style = {code=\tikzfoldingtruncatedcuboctahedron[];}, pics/icosahedron folding/.style = {code=\tikzfoldingicosahedron[];}, pics/rhombicuboctahedron folding/.style = {code=\tikzfoldingrhombicuboctahedron[];}, pics/snub cube folding/.style = {code=\tikzfoldingsnubcube[];}, pics/icosidodecahedron folding/.style = {code=\tikzfoldingicosidodecahedron[];} }% % Platonic solids % --------------- \def\tikzfoldingdodecahedron#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@pentagon {\tikz@lib@fold@face@A} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@B} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@C} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@D} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@E} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@F} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@G} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@H} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@I} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@J} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@K} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@L} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } \endgroup }% %alternative dodecahedron: larger format possible \def\tikzfoldingalternatedodecahedron#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@pentagon {\tikz@lib@fold@face@A} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@B} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@C} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@D} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@E} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@F} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@G} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} } } } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@H} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@I} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@J} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@K} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@L} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} \endgroup }% %tetrahedron \def\tikzfoldingtetrahedron#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@triangle {\tikz@lib@fold@face@A} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@B} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@C} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@D} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } \endgroup }% %cube \def\tikzfoldingcube#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@square{\tikz@lib@fold@face@A} { \tikz@lib@fold@square{\tikz@lib@fold@face@B} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } { \tikz@lib@fold@square{\tikz@lib@fold@face@C} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } { \tikz@lib@fold@square{\tikz@lib@fold@face@D} { \tikz@lib@fold@square{\tikz@lib@fold@face@E} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } { \tikz@lib@fold@square{\tikz@lib@fold@face@F} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } \endgroup }% %octahedron \def\tikzfoldingoctahedron#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@triangle {\tikz@lib@fold@face@A} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@B} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@C} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@D} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@E} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@F} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@G} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@H} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } \endgroup }% %icosahedron \def\tikzfoldingicosahedron#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@triangle {\tikz@lib@fold@face@A} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@B} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@C} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@D} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@E} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@F} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@G} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } } } {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@H} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@I} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@J} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@K} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@L} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@M} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@N} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } } } {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@O} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@P} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@Q} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@R} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@S} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@T} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } } } {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } \endgroup }% % Archimedean solids % ------------------ %truncated tetrahedron \def\tikzfoldingtruncatedtetrahedron#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@hexagon {\tikz@lib@fold@face@A} {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@B} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@C} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@D} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@E} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@F} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@G} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@H} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } \endgroup }% %cuboctahedron \def\tikzfoldingcuboctahedron#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@square {\tikz@lib@fold@face@A} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@B} {\tikz@lib@fold@square {\tikz@lib@fold@face@C} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@D} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@E} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@F} {\tikz@lib@fold@square {\tikz@lib@fold@face@G} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@H} {\tikz@lib@fold@square {\tikz@lib@fold@face@I} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@J} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@K} {\tikz@lib@fold@square {\tikz@lib@fold@face@L} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@M} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@N} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } \endgroup }% %truncated cube \def\tikzfoldingtruncatedcube#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@octagon {\tikz@lib@fold@face@A} {\tikz@lib@fold@octagon {\tikz@lib@fold@face@B} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@C} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@D} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@E} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@F} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@octagon {\tikz@lib@fold@face@G} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@H} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@octagon {\tikz@lib@fold@face@I} {\tikz@lib@fold@octagon {\tikz@lib@fold@face@J} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@K} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@L} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@octagon {\tikz@lib@fold@face@M} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@N} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} \endgroup }% %truncated octahedron \def\tikzfoldingtruncatedoctahedron#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@hexagon {\tikz@lib@fold@face@A} {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@B} {\tikz@lib@fold@square {\tikz@lib@fold@face@C} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@D} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@square {\tikz@lib@fold@face@E} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@F} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@G} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} } } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@H} {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@I} {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@J} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@square {\tikz@lib@fold@face@K} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@L} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@M} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@square {\tikz@lib@fold@face@N} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} \endgroup }% %rhombicuboctahedron \def\tikzfoldingrhombicuboctahedron#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@square {\tikz@lib@fold@face@A} {\tikz@lib@fold@square {\tikz@lib@fold@face@B} {\tikz@lib@fold@square {\tikz@lib@fold@face@C} {\tikz@lib@fold@square {\tikz@lib@fold@face@D} {\tikz@lib@fold@square {\tikz@lib@fold@face@E} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@F} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@G} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@H} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@I} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } } {\tikz@lib@fold@square {\tikz@lib@fold@face@J} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@K} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@L} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@M} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } } {\tikz@lib@fold@square {\tikz@lib@fold@face@N} {\tikz@lib@fold@square {\tikz@lib@fold@face@O} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@square {\tikz@lib@fold@face@P} {\tikz@lib@fold@square {\tikz@lib@fold@face@Q} {\tikz@lib@fold@square {\tikz@lib@fold@face@R} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@S} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@T} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } {\tikz@lib@fold@square {\tikz@lib@fold@face@U} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@V} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@W} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@X} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } {\tikz@lib@fold@square {\tikz@lib@fold@face@Y} {\tikz@lib@fold@square {\tikz@lib@fold@face@Z} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } \endgroup }% %truncated cuboctahedron \def\tikzfoldingtruncatedcuboctahedron#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@square {\tikz@lib@fold@face@A} {\tikz@lib@fold@octagon {\tikz@lib@fold@face@B} {\tikz@lib@fold@square {\tikz@lib@fold@face@C} {\tikz@lib@fold@octagon {\tikz@lib@fold@face@D} {\tikz@lib@fold@square {\tikz@lib@fold@face@E} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@F} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@custom@right@path{15}} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@G} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@custom@left@path{15}} {\tikz@lib@fold@ear@path} } } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@H} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@I} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@J} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@custom@right@path{15}} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@custom@left@path{15}} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@K} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@custom@right@path{15}} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@custom@left@path{15}} {\tikz@lib@fold@ear@path} } } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@L} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@M} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@N} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@custom@right@path{15}} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@custom@left@path{15}} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@octagon {\tikz@lib@fold@face@O} {\tikz@lib@fold@square {\tikz@lib@fold@face@P} {\tikz@lib@fold@octagon {\tikz@lib@fold@face@Q} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@R} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@S} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@T} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@custom@right@path{15}} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@custom@left@path{15}} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@U} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@custom@right@path{15}} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@custom@left@path{15}} {\tikz@lib@fold@ear@path} } } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@V} {\tikz@lib@fold@octagon {\tikz@lib@fold@face@W} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@X} {\tikz@lib@fold@octagon {\tikz@lib@fold@face@Y} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@Z} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@custom@right@path{15}} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@custom@left@path{15}} {\tikz@lib@fold@ear@path} } \endgroup }% %snub cube \def\tikzfoldingsnubcube#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@square{\tikz@lib@fold@face@A} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@B} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@C} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@D} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} { \tikz@lib@fold@square{\tikz@lib@fold@face@E} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@F} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@G} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@H} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@I} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@J} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@K} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@L} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@M} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} { \tikz@lib@fold@square{\tikz@lib@fold@face@N} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@O} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@P} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@Q} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@R} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@S} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@T} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@U} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@V} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} { \tikz@lib@fold@square{\tikz@lib@fold@face@W} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@X} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@Y} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@Z} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AA} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AB} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AC} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AD} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AE} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} { \tikz@lib@fold@square{\tikz@lib@fold@face@AF} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AG} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AH} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AI} { \tikz@lib@fold@square{\tikz@lib@fold@face@AJ} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AK} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AL} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } \endgroup }% % icosidodecahedron \def\tikzfoldingicosidodecahedron#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@pentagon{\tikz@lib@fold@face@A} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@B} { \tikz@lib@fold@pentagon{\tikz@lib@fold@face@C} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@D} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@ear@custom@right@path{24}} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@E} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@F} { \tikz@lib@fold@pentagon{\tikz@lib@fold@face@G} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@custom@right@path{24}} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@H} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} { \tikz@lib@fold@pentagon{\tikz@lib@fold@face@I} {\tikz@lib@fold@ear@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@J} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } } } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@K} {\tikz@lib@fold@ear@custom@right@path{24}} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@L} { \tikz@lib@fold@pentagon{\tikz@lib@fold@face@M} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@N} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} { \tikz@lib@fold@pentagon{\tikz@lib@fold@face@O} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@P} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } } {\tikz@lib@fold@ear@custom@right@path{24}} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@Q} {\tikz@lib@fold@ear@custom@right@path{24}} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } {\tikz@lib@fold@path} { \tikz@lib@fold@pentagon{\tikz@lib@fold@face@R} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@S} { \tikz@lib@fold@pentagon{\tikz@lib@fold@face@T} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@custom@right@path{24}} {\tikz@lib@fold@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@U} { \tikz@lib@fold@pentagon{\tikz@lib@fold@face@V} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@custom@right@path{24}} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@W} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@X} {\tikz@lib@fold@ear@custom@right@path{24}} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@Y} { \tikz@lib@fold@pentagon{\tikz@lib@fold@face@Z} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@custom@right@path{24}} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AA} { \tikz@lib@fold@pentagon{\tikz@lib@fold@face@AB} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AC} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} { \tikz@lib@fold@pentagon{\tikz@lib@fold@face@AD} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AE} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@cut@path} } } {\tikz@lib@fold@ear@custom@right@path{24}} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AF} {\tikz@lib@fold@ear@custom@right@path{24}} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } } {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} } \endgroup }%