A animação Tikz nunca para de compilar

A animação Tikz nunca para de compilar

Por que esse MWE nunca para de compilar, gerando toneladas de páginas em PDF?

\documentclass[french,xcolor=dvipsnames,9pt]{beamer}
\usepackage{tikz}
\usetheme{Warsaw}\usecolortheme{wolverine}

\setbeamersize{text margin left=.4cm}
\setbeamersize{text margin right=.4cm}

\newcommand{\Rect}[2][blue]{%
    \begin{scope}[#2]
        \draw[draw=#1,fill=#1!25,join=round]
            (0,0) -- (2,0) -- (0,1) -- cycle ;
        \filldraw[#1] (0,0) rectangle (.2,.2) ; 
    \end{scope}
    }

\begin{document}

\begin{frame}
\begin{center}

\begin{tikzpicture}

\only<1->{\Rect{}}

\foreach \i [evaluate=\i as \j using \i+2] in {1,...,2} {%
    \only<\j>{
    \begin{scope}[shift={(3*\i/20,0)}]
        \Rect{}
    \end{scope}
    }
    }


\end{tikzpicture}
\end{center}
\end{frame}
\end{document}

Responder1

Não verifiquei, mas pode acontecer que o argumento da \onlymacro seja comparado ao valor do framecounter e como a aritmética do TikZ \i+2retorna um ponto decimal, 3.0essa comparação nunca é satisfeita. Portanto, você precisa converter o resultado em número inteiro para torná-lo 3. Então

\foreach \i [evaluate=\i as \j using int(\i+2)] in {1,...,2} {%

faz isso.

informação relacionada