Анимация Tikz никогда не перестает компилироваться

Анимация Tikz никогда не перестает компилироваться

Почему этот MWE никогда не прекращает компиляцию, генерируя тонны страниц 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}

решение1

Я не проверял, но может случиться так, что аргумент макроса \onlyсравнивается со значением счетчика кадров, и поскольку арифметика TikZ \i+2возвращает десятичную точку, то 3.0это сравнение никогда не будет выполнено. Следовательно, вам нужно преобразовать результат в целое число, чтобы сделать его 3. Так что

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

Имеет ли это.

Связанный контент