diff options
Diffstat (limited to 'graphics/pgf/base/tex/generic/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex')
-rw-r--r-- | graphics/pgf/base/tex/generic/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex | 2444 |
1 files changed, 2444 insertions, 0 deletions
diff --git a/graphics/pgf/base/tex/generic/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex b/graphics/pgf/base/tex/generic/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex new file mode 100644 index 0000000000..4974fffa50 --- /dev/null +++ b/graphics/pgf/base/tex/generic/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex @@ -0,0 +1,2444 @@ +% 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@squarerhombusr#1#2#3#4#5{% right leaning "square-of-two" rhombus + \scope[xshift=.63\tikz@lib@fold@length,yshift=.4755\tikz@lib@fold@length,xslant=0.34] + #1 + \endscope + \scope[shift={(70.529:\tikz@lib@fold@length)}] + #2 + \endscope + \scope[shift={(35.264:1.63299\tikz@lib@fold@length)},rotate=-109.471] + #3 + \endscope + \scope[xshift=\tikz@lib@fold@length,rotate=180] + #4 + \endscope + \scope[rotate=70.529] + #5 + \endscope +}% + +\def\tikz@lib@fold@squarerhombusl#1#2#3#4#5{% left leaning "square-of-two" rhombus + \scope[xshift=.33\tikz@lib@fold@length,yshift=.4755\tikz@lib@fold@length,xslant=-0.34] + #1 + \endscope + \scope[shift={(109.471:\tikz@lib@fold@length)}] + #2 + \endscope + \scope[shift={(54.736:1.1547\tikz@lib@fold@length)},rotate=-70.529] + #3 + \endscope + \scope[xshift=\tikz@lib@fold@length,rotate=180] + #4 + \endscope + \scope[rotate=109.471] + #5 + \endscope +}% + +\def\tikz@lib@fold@goldenrhombusr#1#2#3#4#5{% right leaning golden rhombus + \scope[xshift=.724\tikz@lib@fold@length,yshift=.447\tikz@lib@fold@length, xslant=0.447] + #1 + \endscope + \scope[shift={(63.435:\tikz@lib@fold@length)}] + #2 + \endscope + \scope[shift={(31.717:1.701\tikz@lib@fold@length)},rotate=-116.565] + #3 + \endscope + \scope[xshift=\tikz@lib@fold@length,rotate=180] + #4 + \endscope + \scope[rotate=63.435] + #5 + \endscope +}% + +\def\tikz@lib@fold@goldenrhombusl#1#2#3#4#5{% left leaning golden rhombus + \scope[xshift=.276\tikz@lib@fold@length,yshift=.447\tikz@lib@fold@length, xslant=-0.447] + #1 + \endscope + \scope[shift={(116.565:\tikz@lib@fold@length)}] + #2 + \endscope + \scope[shift={(58.283:1.051\tikz@lib@fold@length)},rotate=-63.435] + #3 + \endscope + \scope[xshift=\tikz@lib@fold@length,rotate=180] + #4 + \endscope + \scope[rotate=116.565] + #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/dodecahedron rhombic folding/.style = {code=\tikzfoldingrhombicdodecahedron[];}, + pics/dodecahedron golden folding/.style = {code=\tikzfoldinggoldenrhombicdodecahedron[];}, + 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 +}% + +%rhombic (Catalan) dodecahedron ("type 1" - spheric) +\def\tikzfoldingrhombicdodecahedron#1[#2]#3;{% + \begingroup% + \tikzset{#2}% + \tikz@lib@fold@squarerhombusr{\tikz@lib@fold@face@B} + {\tikz@lib@fold@squarerhombusl{\scope[rotate=90]\tikz@lib@fold@face@C\endscope} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@squarerhombusr{\tikz@lib@fold@face@E} + {\tikz@lib@fold@squarerhombusl{\scope[rotate=90]\tikz@lib@fold@face@F\endscope} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@squarerhombusr{\scope[rotate=180]\tikz@lib@fold@face@D\endscope} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + {\tikz@lib@fold@squarerhombusl{\scope[rotate=-90]\tikz@lib@fold@face@H\endscope} + {\tikz@lib@fold@squarerhombusr{\scope[rotate=180]\tikz@lib@fold@face@G\endscope} + {\tikz@lib@fold@squarerhombusl{\scope[rotate=-90]\tikz@lib@fold@face@L\endscope} + {\tikz@lib@fold@squarerhombusr{\scope[rotate=180]\tikz@lib@fold@face@K\endscope} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@squarerhombusl{\scope[rotate=90]\tikz@lib@fold@face@J\endscope} + {\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@ear@path} + } + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@squarerhombusl{\tikz@lib@fold@face@H} + {\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@ear@path} + } + {\tikz@lib@fold@squarerhombusr{\tikz@lib@fold@face@F} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + \endgroup +}% + +%golden rhombic dodecahedron ("type 2" - flattened) +\def\tikzfoldinggoldenrhombicdodecahedron#1[#2]#3;{% + \begingroup% + \tikzset{#2}% + \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@A} + {\tikz@lib@fold@goldenrhombusl{\scope[rotate=180]\tikz@lib@fold@face@B\endscope} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@path} + } + {\tikz@lib@fold@goldenrhombusr{\scope[rotate=180]\tikz@lib@fold@face@E\endscope} + {\tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@H} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@G} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + {\tikz@lib@fold@goldenrhombusl{\scope[rotate=180]\tikz@lib@fold@face@D\endscope} + {\tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@I} + {\tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@L} + {\tikz@lib@fold@goldenrhombusr{\scope[rotate=180]\tikz@lib@fold@face@K\endscope} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@goldenrhombusl{\scope[rotate=180]\tikz@lib@fold@face@J\endscope} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@goldenrhombusr{\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@path} + {\tikz@lib@fold@path} + } + {\tikz@lib@fold@goldenrhombusr{\scope[rotate=180]\tikz@lib@fold@face@C\endscope} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + \endgroup +}% + +%rhombic tricontahedron + +\def\tikzfoldingrhombictricontahedron#1[#2]#3;{% + \begingroup% + \tikzset{#2}% + \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@A} + { \tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@B} + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@F} + { \tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@I} + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@J} + { \tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@K} + {\tikz@lib@fold@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@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@path} + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@H} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + } + { \tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@G} + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@L} + { \tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@N} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@M} + {\tikz@lib@fold@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@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@C} + { \tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@N} + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@N} + { \tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@N} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\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@goldenrhombusr{\tikz@lib@fold@face@N} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + } + { \tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@D} + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@D} + { \tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@D} + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@D} + {\tikz@lib@fold@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@ear@path} + {\tikz@lib@fold@path} + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@D} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + } + { \tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@D} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@E} + { \tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@E} + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@E} + { \tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@E} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@path} + } + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@E} + {\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@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@path} + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@E} + { \tikz@lib@fold@goldenrhombusl{\tikz@lib@fold@face@E} + { \tikz@lib@fold@goldenrhombusr{\tikz@lib@fold@face@E} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@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@path} + } + } + \endgroup +}% |