%This command draw either the escher knot (the original image)
%or the escher impossible brick (the new one).
%
%The Macro use the global (to the page 10) toggle "OriginalImage"
%
%The macro has one parameter:
%         1) The size to use to typeset the content
\newcommand\TTenDisplayImage[1]{%
 \parbox[t]{#1}{%
    \iftoggle{OriginalImage}{%
       \vfill
       \iftoggle{DVIOutput}{%
           \centerline{\includegraphics[viewport=0 0 135 125]{escher.ps}}%
       }{%
           \centerline{\includegraphics[viewport=0 0 135 125]{escher.pdf}}%
       }%
    }{%
       % Author: Julien Cretel
       % Date:   24/02/2013
       %
       %The code was published here:
       %http://www.texample.net/tikz/examples/escher-brick-penrose-triangle/
       %
       \savebox\ImpossibleBrick{%
       \begin{tikzpicture}[scale=4, line join=bevel]
   	
         % \a and \b are two macros defining characteristic
         % dimensions of the impossible brick.
         \pgfmathsetmacro{\a}{0.18}
         \pgfmathsetmacro{\b}{1.37}

         \tikzset{%
           apply style/.code={\tikzset{##1}},
           brick_edges/.style={thick,draw=black},
           face_colourA/.style={fill=gray!50},
           face_colourB/.style={fill=gray!25},
           face_colourC/.style={fill=gray!90},
         }

         \foreach \theta/\v/\facestyleone/\facestyletwo in {%
           0/0/{brick_edges,face_colourA}/{brick_edges,face_colourC},
           180/-\a/{brick_edges,face_colourB}/{brick_edges,face_colourC}
         }{
         \begin{scope}[rotate=\theta,shift={(\v,0)}]
           \draw[apply style/.expand once=\facestyleone]  		
             ({-.5*\b},{1.5*\a}) --
             ++(\b,0)            --
             ++(-\a,-\a)         --
             ++({-\b+2*\a},0)    --
             ++(0,-{2*\a})       --
             ++(\b,0)            --
             ++(-\a,-\a)         --
             ++(-\b,0)           --
             cycle;
           \draw[apply style/.expand once=\facestyletwo] 
             ({.5*\b},{1.5*\a})  --
             ++(0,{-2*\a})       --
             ++(-\a,0)           --
             ++(0,\a)            --
             cycle;
           \end{scope}
         }
       \end{tikzpicture}}
       \par
       \centerline{\usebox\ImpossibleBrick}
   }
 }
}
