%% rubikpatternsLIST.tex  
%% part of the rubikpatterns package v 4.0
%% authors: RWD Nickalls & A Syropoulos
%% 03 March 2017
%%------------------------
%% this file uses the rubikrotation package
%% run this file as : $ pdflatex  --shell-escape  rubikpatternsLIST.tex
%%------------------------

\documentclass[a4paper]{article}

%------LUA-----------
\usepackage{ifluatex}

\ifluatex
  \usepackage{shellesc} %% for use with LUAlatex
  \usepackage{fontspec}
\else
\fi
%--------------------


\usepackage{tikz}
\usepackage{rubikcube}
\usepackage{rubikrotation} 
\usepackage{rubikpatterns} 
%--------------------------
\usepackage{url,ifpdf}
%---------------------
\ifpdf
  \usepackage[verbose]{microtype}
  \usepackage{cmap}
  \usepackage[pdfencoding=auto]{hyperref}

  \hypersetup{%
     pdftitle={rubikpatternsLIST.pdf},
     pdfsubject={Rubik cube, Rubik bundle},
     pdfkeywords={Rubik cube LaTeX}
     }
\fi
%%-------------------
%-------------
\pagestyle{myheadings}
\markright{\texttt{rubikpatternsLIST.pdf} \ \ 
(Rubik bundle v4.0,  March 03, 2017) }
%-------------------------------------
\newcommand{\ShowPattern}[1]{%
\noindent%
  \RubikCubeSolvedWB
  \RubikRotation{#1}
  \ShowCube{2.4cm}{0.6}{\DrawRubikCubeRU}
  \hspace{0.5cm}% was 1cm
\begin{minipage}{9cm}
\noindent\ShowSequence{,\ }{\texttt}{\SequenceShort},
\newline\noindent\texttt{\SequenceInfo}.
\end{minipage}
}
%-------------------------



%======================
\begin{document}


\ifpdf\pdfbookmark[1]{Title}{Title}\fi
\title{List of Rubik patterns\\%
\smallskip\normalsize\texttt{www.ctan.org/tex-archives/macros/latex/contrib/rubik/rubikpatternsLIST.pdf}%
\footnote{This file is part of the Rubik bundle. To generate this file, 
use the following command: 
\newline \texttt{\$ pdflatex --shell-escape  rubikpatternsLIST.tex}}}
\author{RWD Nickalls\,\footnote{email: \textsf{dick@nickalls.org}}%
  \ \ \& A Syropoulos\,\footnote{email: \textsf{asyropoulos@yahoo.com}}}
\date{March 03, 2017 (v4.0)}
\maketitle


%==========================================
\section{Rubik patterns}



A Rubik pattern  is the configuration generated by a sequence of rotations 
(or `moves') from some initial starting configuration (typically a `solved' 
configuration). For example, `sixspot' is a well known pattern  generated  from 
a solved Rubik cube by the  rotation sequence  \texttt{U,Dp,R,Lp,F,Bp,U,Dp}, as follows:


\bigskip

\noindent\hfil%
\RubikCubeSolvedWB
\ShowCube{2.4cm}{0.6}{\DrawRubikCubeRU}%
\RubikRotation{\sixspot}%
\quad\SequenceBraceA{sixspot}{\ShowSequence{}{\Rubik}{\SequenceLong}}\quad%
\ShowCube{2.4cm}{0.6}{\DrawRubikCubeRU}%
\hfil%

\bigskip


\medskip
{\noindent}The code for this image is as follows:

\begin{quote}
\begin{verbatim}
\usepackage{tikz}
\usepackage{rubikcube,rubikrotation,rubikpatterns} 
...
\noindent\hfil%
\RubikCubeSolvedWB%
\ShowCube{2.4cm}{0.6}{\DrawRubikCubeRU}%
\RubikRotation{\sixspot}%
\quad\SequenceBraceA{sixspot}{%
                        \ShowSequence{}{\Rubik}{\SequenceLong}%
                        }%
\quad\ShowCube{2.4cm}{0.6}{\DrawRubikCubeRU}%
\hfil%
\end{verbatim}
\end{quote}


Note that the  appearance of a pattern generated by  a given rotation sequence is,  
of course, sensitive  to (a)~the particular colour configuration of the solved 
cube used, and (b)~the initial  orientation of the cube.


The initial condition   associated with all the pattern images shown in this 
document is the  solved form of the `WB' colour configuration 
(White opposite Blue), since this is the solved cube colour configuration used 
by the Reid website, from which nearly all these patterns are drawn.


The following image shows the WB cube form (set up using the command 
\verb!\RubikCubeSolvedWB!) displayed in a  semi-flat (SF) mode 
(\verb!\DrawRubikCubeSF!) so we can see all the faces 
---see the \textsc{rubikcube} documentation for details.

\bigskip

  \RubikCubeSolvedWB%
  \ShowCube{2cm}{0.5}{\DrawRubikCubeSF}%

\medskip
{\noindent}The code for this image is as follows:

\begin{quote}
\begin{verbatim}
\usepackage{tikz}
\usepackage{rubikcube,rubikrotation} 
...
\RubikCubeSolvedWB%
\ShowCube{2cm}{0.5}{\DrawRubikCubeSF}%
\end{verbatim}
\end{quote}





\section{Typesetting}

The remainder of this document just  displays the various patterns made available 
 with the \textsc{rubikpatterns} package. 
We display the patterns using the following   \verb!\ShowPattern! command, which
uses the  \verb!\RubikRotation! command (from the  \textsc{rubikrotation} package),
and  takes the pattern macro-name as the argument:
This command draws the cube from the right-upper (RU) viewpoint, and shows the 
rotation sequence and metadata.

\begin{verbatim}
%----------------------------------------
\usepackage{tikz}
\usepackage{rubikcube,rubikrotation,rubikpatterns} 
...
\newcommand{\ShowPattern}[1]{%
\noindent%
  \RubikCubeSolvedWB
  \RubikRotation{#1}
  \ShowCube{2.4cm}{0.6}{\DrawRubikCubeRU}
  \hspace{0.5cm}%
\begin{minipage}{9cm}
\noindent\ShowSequence{,\ }{\texttt}{\SequenceShort},
\newline\noindent\texttt{\SequenceInfo}.
\end{minipage}
}
%------------------------------------------
\end{verbatim}

\pagebreak

For example, the first pattern below (Pons Asinorum) is typeset using the following  
command:

\begin{verbatim} 
\bigskip\ShowPattern{\ponsasinorum}
\end{verbatim}


%-----------------------------
\section{List of Patterns}

\bigskip\ShowPattern{\PonsAsinorum}

\bigskip\ShowPattern{\CheckerboardsThree}

\bigskip\ShowPattern{\CheckerboardsSix} 

\bigskip\ShowPattern{\Stripes}

\bigskip\ShowPattern{\CubeInCube}

\bigskip\ShowPattern{\CubeInCubeInCube}

\bigskip\ShowPattern{\ChristmasCross}

\bigskip\ShowPattern{\PlummersCross}

\bigskip\ShowPattern{\Anaconda}

\bigskip\ShowPattern{\Python}

\bigskip\ShowPattern{\BlackMamba}

\bigskip\ShowPattern{\GreenMamba}

\bigskip\ShowPattern{\FemaleRattlesnake}

\bigskip\ShowPattern{\MaleRattlesnake}

\bigskip\ShowPattern{\FemaleBoa}

\bigskip\ShowPattern{\MaleBoa}

\bigskip\ShowPattern{\FourSpot}

\bigskip\ShowPattern{\sixspot}

\bigskip\ShowPattern{\OrthogonalBars}

\bigskip\ShowPattern{\SixTs}

\bigskip\ShowPattern{\SixTwoOne}

\bigskip\ShowPattern{\ExchangedPeaks}

\bigskip\ShowPattern{\TwoTwistedPeaks}

\bigskip\ShowPattern{\FourTwistedPeaks}

\bigskip\ShowPattern{\ExchangedChickenFeet}

\bigskip\ShowPattern{\TwistedChickenFeet}

\bigskip\ShowPattern{\ExchangedRings}

\bigskip\ShowPattern{\TwistedRings}

\bigskip\ShowPattern{\EdgeHexagonTwo}

\bigskip\ShowPattern{\EdgeHexagonThree}

\bigskip\ShowPattern{\TomParksPattern}

\bigskip\ShowPattern{\RonsCubeInCube}

\bigskip\ShowPattern{\TwistedDuckFeet}

\bigskip\ShowPattern{\ExchangedDuckFeet}

\bigskip\ShowPattern{\Superflip}

\bigskip


%------------------------
\section{References}

\begin{itemize}
\item Fridrich website (Fridrich J). \ \ \url{http://www.ws.binghamton.edu/fridrich/}
See the `Pretty patterns'  webpage 
\url{http://www.ws.binghamton.edu/fridrich/ptrns.html}



\item  Kociemba website (Kociemba H).  \url{http://www.kociemba.org/cube.htm}
 {\newline}---for superflip see: \url{http://www.kociemba.org/math/oh.htm}



\item Randelshofer website (Randelshofer W).  Pretty patterns. \url{http://www.randelshofer.ch/rubik/patterns/U080.01.html}



\item Reid patterns web page (Reid M).  
\url{http://www.cflmath.com/~reid/Rubik/patterns.html}

\end{itemize}


\begin{center}
------ END ------
\end{center}

\end{document}