更新:用动画代替覆盖

更新:用动画代替覆盖

我希望能够在投影仪中绘制动画线

第一眼

第一眼

最终外观

在同一帧内添加动画

感谢@Kevin C 提供这些图片

\documentclass[leqno,mathserif]{beamer}

\usepackage[english,french]{babel}
\usepackage{dsfont}
\usepackage{tikz}
\usepackage{xcolor}
\usepackage{animate}

\setbeamercovered{transparent}
\usepackage{pifont}
\usepackage{xcolor}
\usepackage{enumitem}


\usepackage{pgfplots}
\usepackage{tikz}
\usetikzlibrary{arrows}
\begin{document}
\begin{frame}
\begin{tikzpicture}
\begin{axis}[axis y line=none, y=0.5cm/3, restrict y to domain=0:20, axis lines=left]

\end{axis}
\end{tikzpicture}
\end{frame}
\end{document}

答案1

更新:用动画代替覆盖

要使用该包为所有三个帧制作动画animate,可以将animateinline环境与文本文件(stack.txt在下面的示例中)一起使用,为环境指定“时间线”。

代码

\documentclass{beamer}
\usepackage{tikz,animate}
\usetikzlibrary{decorations.pathreplacing}

\begin{filecontents}{stack.txt}
::0x0
::1x0
::2x0
::3x0
\end{filecontents}

\newcommand\tick[2][]{\draw(#2,3pt)--(#2,-3pt)node[below]{#1};}
\newcommand\tikzmark[1]{\tikz[remember picture,baseline=(#1.base)]\node[inner sep=0](#1){$#1$};}

\begin{document}

\begin{frame}

\centering
\begin{animateinline}[autoplay,loop,poster=last,
  begin={\begin{tikzpicture}[remember picture]\useasboundingbox(0,-1)rectangle(8,1.7);},
  end={\end{tikzpicture}},
  timeline={stack.txt}
]{1}
  \newframe
    \draw[line width=2pt,-latex](0,0)--(8,0);
    \tick[$0$]{.5}
    \tick[\tikzmark{T}]{6}
  \newframe
    \tick[$Dt$]{1.3}
    \tick[$2Dt$]{2.1}
    \node[anchor=west] at (T.east) {$=Dt\cdot L$};
    \foreach \x in {2.9,3.7,4.5,5.3} {\tick{\x}}
  \newframe
    \draw[decorate,decoration={brace,amplitude=4pt}](.5,4pt)--(1.3,4pt)node[midway,above,align=center]{$Dt$\\step size};
    \draw[decorate,decoration={brace,amplitude=4pt}](.5,1.1)--(6,1.1)node[midway,above]{$L$ steps};
\end{animateinline}

\end{frame}
\end{document}

Beamer 叠加

TikZ 支持叠加。只需<overlay spec>照常使用语法即可。

代码

\documentclass{beamer}
\usepackage{tikz}
\usetikzlibrary{decorations.pathreplacing}

\newcommand<>\tick[2][]{\draw#3(#2,3pt)--(#2,-3pt)node[below]{#1};}

\begin{document}
\begin{frame}
\centering
\begin{tikzpicture}[font=\footnotesize]
  \draw[line width=2pt,-latex](0,0)--(7,0);
  \tick[$0$]{.5}
  \tick[\alt<2->{\hskip35pt$T=Dt\cdot L$}{$T$}]{6}
  \tick<2->[$Dt$]{1.3}
  \tick<2->[$2Dt$]{2.1}
  \foreach \x in {2.9,3.7,4.5,5.3} {\tick<2->{\x}}
  
  \draw<3->[decorate,decoration={brace,amplitude=4pt}](.5,4pt)--(1.3,4pt)node[midway,above,align=center]{$Dt$\\step size};
  \draw<3->[decorate,decoration={brace,amplitude=4pt}](.5,1.1)--(6,1.1)node[midway,above]{$L$ steps};
\end{tikzpicture}\par
\end{frame}
\end{document}

相关内容