nidificazione multiframe
Oct 20 2020
Mi chiedo se sia possibile quanto segue. Vorrei annidare ambienti animateinline e multiframe per simulare la dipendenza dal tempo di un segnale per diversi parametri. Qualcosa del genere:
\documentclass{standalone}
\usepackage{tikz}
\usepackage{animate}
\begin{document}
\centering
%\begin{animateinline}[poster=first, label=graph_switch,controls=step]{2}
% \multiframe{20}{rt=0+5}{%
\def\rs{1}
\begin{animateinline}[poster=first, label=graph_switch, autoplay]{5}
\multiframe{15}{rt=0+5}{%
\begin{tikzpicture}
%draw coordinate axis
\draw[thick, color=black, -latex] (-4.05,0) -- (4.05,0) node[right]{$y$};
\draw[thick, color=black, -latex] (0,-1.4) -- (0,1.4) node[above]{$t$};
\draw[scale=1, domain=-4:4, smooth, variable=\t, blue] plot ({\t}, {\rs*sin(100*\t+\rt)});
\node at (5,5) {};
\node at (-5,-5) {};
\end{tikzpicture}
}%
\end{animateinline}
% }%
% \end{animateinline}
\end{document}
Sembra, tuttavia, che tale annidamento sia impossibile e rimuovere il commento dalle 4 righe dell'esempio porti un errore. C'è qualche soluzione alternativa per presentare qualcosa di simile?
Risposte
1 AlexG Oct 20 2020 at 18:43
La divisione di un'animazione in più sezioni potrebbe essere eseguita in questo modo. Nel presente esempio, le due sezioni sono separate da una pausa ( \newframe*). Clicca per continuare.
\documentclass{standalone}
\usepackage{tikz}
\usepackage{animate}
\begin{document}
\begin{animateinline}[poster=first, label=graph_switch, autoplay]{5}
\multiframe{15}{rt=0+5}{%
\def\rs{1}%
\begin{tikzpicture}
%draw coordinate axis
\draw[thick, color=black, -latex] (-4.05,0) -- (4.05,0) node[right]{$y$};
\draw[thick, color=black, -latex] (0,-1.4) -- (0,1.4) node[above]{$t$};
\draw[scale=1, domain=-4:4, smooth, variable=\t, blue] plot ({\t}, {\rs*sin(100*\t+\rt)});
\node [anchor=north east] at (4,2) {$A=1$};
% \node at (5,5) {};
% \node at (-5,-5) {};
\end{tikzpicture}
}%
\newframe*
\multiframe{15}{rt=0+5}{%
\def\rs{0.5}%
\begin{tikzpicture}
%draw coordinate axis
\draw[thick, color=black, -latex] (-4.05,0) -- (4.05,0) node[right]{$y$};
\draw[thick, color=black, -latex] (0,-1.4) -- (0,1.4) node[above]{$t$};
\draw[scale=1, domain=-4:4, smooth, variable=\t, blue] plot ({\t}, {\rs*sin(100*\t+\rt)});
\node [anchor=north east] at (4,2) {$A=0.5$};
% \node at (5,5) {};
% \node at (-5,-5) {};
\end{tikzpicture}
}%
\end{animateinline}
\end{document}