Criando padrão do tikzpic

Criando padrão do tikzpic

Eu tenho um tile.tex (um arquivo separado) que chamo no meu documento principal.

Eu quero fazer duas coisas

  1. Crie um padrão de 3x5 costurando tile.tex. Isso significa que ligarei para tile.tex 15 vezes.
  2. Preciso controlar a rotação de cada bloco. Como meu ladrilho é um quadrado, irei girá-lo em apenas quatro anjos 0,90.180.270.

o que preciso fazer no código a seguir

\begin{document}
%-----------------------------
\begin{frame}
\frametitle{\color{blue}{Tile}}
\begin{figure}
\input{tile}
\end{figure}
\end{frame}
%-----------------------------
\end{document}

Responder1

Declare seu bloco em um standalone.clsdocumento:

\documentclass[tikz]{standalone}
\begin{document}
\tikz \node[draw=red, thick, minimum size=2cm] {A};
\end{document}

Que produz uma figura ajustada/cortada:

Telha

E inclua este graphicarquivo como uma imagem sempre que precisar. A tabularpode ser usado para organizá-los em uma grade com ou sem separação entre colunas e linhas.

\documentclass{beamer}

\begin{document}
\begin{frame}{My title}

{\renewcommand{\arraystretch}{0}
\begin{tabular}{*{5}{@{}c}}
\includegraphics[origin=c,angle=0]{mytile} &
\includegraphics[origin=c,angle=90]{mytile} &
\includegraphics[origin=c,angle=180]{mytile} &
\includegraphics[origin=c,angle=270]{mytile} &
\includegraphics[origin=c,angle=0]{mytile} \\
\includegraphics[origin=c,angle=0]{mytile} &
\includegraphics[origin=c,angle=90]{mytile} &
\includegraphics[origin=c,angle=180]{mytile} &
\includegraphics[origin=c,angle=270]{mytile} &
\includegraphics[origin=c,angle=0]{mytile} \\
\includegraphics[origin=c,angle=0]{mytile} &
\includegraphics[origin=c,angle=90]{mytile} &
\includegraphics[origin=c,angle=180]{mytile} &
\includegraphics[origin=c,angle=270]{mytile} &
\includegraphics[origin=c,angle=0]{mytile} \\
\end{tabular}}

\end{frame}
\end{document}

deslizar

Caso você utilize TikZpara definir sua figura é possível utilizar outras soluções para construir um array de imagens giradas. Uma delas poderia ser definir a imagem principal como a pice repeti-la dentro de a matrixsem colunas e separação de linhas. Alguns exemplos estão a seguir. A figura original foi retirada deprocurando uma alternativa eficiente para meu código tikzpic.

\documentclass[tikz, border=2mm]{standalone} 
\usetikzlibrary{positioning}

\tikzset{
    myfigure/.pic={
        \fill[black] (0,0) rectangle ++(-1,-1);
        \fill[blue] (-1,0) rectangle ++(-3,-1);
        \fill[green] (-4,0)-- ++(-1,0)--++(1,-1)--cycle;
        \fill[blue] (0,-1) rectangle ++(-1,-3);
        \fill[green] (0,-4)-- ++(-1,0)--++(1,-1)--cycle;
        \fill[red] (-4,-1)-- ++(0,-3)--++(3,0)--cycle;
    }
}

\begin{document}
\begin{tikzpicture}
\matrix[column sep=0pt, row sep=0pt] (A) {
    \pic[rotate around={-90:(-2.5,-2.5)}]{myfigure}; & 
    \pic[rotate around={180:(-2.5,-2.5)}]{myfigure}; \\
    \pic{myfigure}; &   
    \pic[rotate around={90:(-2.5,-2.5)}]{myfigure}; \\}; 

\matrix[column sep=0pt, row sep=0pt, right=of A] (B){
    \pic[rotate around={90:(-2.5,-2.5)}]{myfigure}; &   
    \pic{myfigure}; \\ 
    \pic[rotate around={180:(-2.5,-2.5)}]{myfigure}; &  
    \pic[rotate around={-90:(-2.5,-2.5)}]{myfigure}; \\}; 

\matrix[column sep=0pt, row sep=0pt, below=of A]{
    \pic[rotate around={180:(-2.5,-2.5)}]{myfigure}; &  
    \pic[rotate around={90:(-2.5,-2.5)}]{myfigure}; \\ 
    \pic[rotate around={270:(-2.5,-2.5)}]{myfigure}; &  
    \pic[rotate around={0:(-2.5,-2.5)}]{myfigure}; \\}; 

\begin{scope}[shift={(10.5cm,-10.5cm)}]
    \pic at (0,0) {myfigure};
    \pic[rotate=90] at (0,-1) {myfigure};
    \pic[rotate=180] at (1,-1) {myfigure};
    \pic[rotate=270] at (1,0) {myfigure};
\end{scope}
\end{tikzpicture}
\end{document}

insira a descrição da imagem aqui

informação relacionada